方法1:在Dialog里面添加一个Picture控件,类型里面选icon,然后添加ico资源(用资源视图),然后直接选择这个资源的ID即可。这种方法的前提是有icon资源文件
方法2:CStatic myStatic;// Create a child icon static control.
myStatic.Create(_T("my static"), WS_CHILD|WS_VISIBLE|SS_ICON|SS_CENTERIMAGE, CRect(10,10,150,50), pParentWnd);// Set the icon of the static control to be the system // question mark icon.
myStatic.SetIcon( ::LoadIcon(NULL, IDI_QUESTION) );这种方法使用的是系统图标. 本方法应该用在ON_CREATE中,不能用在ON_INITIDIALOG中.
方法3: 对于静态的static或picture控件,在OnInitDialog中直接SetIcon是不起作用的
可以通过STM_SETICON实现。
HICON hIcon = (HICON)LoadImage(NULL, szPath, IMAGE_ICON, 0, 0, LR_LOADFROMFILE);
::PostMessage(GetDlgItem(IDC_STATIC_ICON)->m_hWnd, STM_SETICON, (WPARAM)hIcon, 0);
对于CButton,必须设置style风格