惭愧!又是很久没有更新博客了,理由不多说了!既忙且懒,哈哈!我的原创Nfml中用到一个颜色设定的地方,所以这两天把ChooseColor研究了一下,没想到搞定了!其实挺简单的,就是调用COMMDLG.DLL中的标准windows API 函数而已,不过需要从动态链接库里引用!具体实现如下!
typedef BOOL (APIENTRY* LFCHOOSECOLORPROC) (LPCHOOSECOLOR ); //自定义类型
HINSTANCE g_hLib = 0; //
LFCHOOSECOLORPROC lpfnChooseColor = 0;
void InitColorDialog(void)
{
g_hLib = LoadLibrary (TEXT ("COMMDLG.DLL"));
if(g_hLib)
{
lpfnChooseColor = (LFCHOOSECOLORPROC)GetProcAddress (g_hLib, TEXT ("ChooseColor"));
}
}
void UnInitColorDialog(void)
{
if(g_hLib)
FreeLibrary(g_hLib);
}
COLORREF ColorDialog(void)
{
CHOOSECOLOR cc;
static COLORREF cr[16];
TCHAR szOut[128];
INT rc;
// Initialize color structur