char szStr[41];
CColorDialog ColorDlgBox(0,0,this);
if ( ColorDlgBox.DoModal() == IDOK)
{
sprintf(szStr,"Color Index = %lu",ColorDlgBox.GetColor());
MessageBox(szStr,"Color Selection",MB_OK);
}
}

解决方案 »

  1.   

    #include "stdafx.h"
    #include 'colordialog.h"static COLORREF s_rgbColor=RGB( 128,128,128);static COLORREF s_arCustomColors[]={
      RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
      ,RGB(255,255,255)
    };void OnColorDialog(HWND hwnd)
    {
      CHOOSECOLOR dlgColor;
      dlgColor.lStructSize=sizeof(CHOOSECOLOR);
      dlgColor.hwndOwner=hwnd;
      dlgColor.hInstance=NULL;
      dlgColor.lpTemplateName=NULL;
      dlgColor.rgbResult= s_rgbColor;
      dlgColor.lpCustColors=s_arCustomColors;
      dlgColor.Flags=CC_ANYCOLOR|CC_RGBINIT;
      dlgColor.lCustData=0;
      dlgColor.lpfnHook=NULL;  BOOL bResult=ChooseColor(&dlgColor);
      if(bResult){
        s_rgbColor=dlgColor.rgbResult;
      }
    }敲完了,累死我了,能不能给点分啊?