![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
// DiaLog.cpp : 定义应用程序的入口点。 // #include "stdafx.h" #include "windows.h" #include "resource.h" HICON hdicon;//因为LoadIcon这个函数是加载ico图标,程序一开始就需要进行这个操作,所以定义为全局变量 LRESULT CALLBACK DialogProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam) { switch(uMsg) { case WM_INITDIALOG: MoveWindow(hWnd,100,100,500,300,FALSE);//移动窗口位置,这里可要可不要 SendMessage(hWnd,WM_SETICON,ICON_SMALL,(LPARAM)hdicon); //这句话很重要,向窗口发送消息,设置图标 SetWindowPos(hWnd,NULL,500,300,0,0,SWP_NOSIZE); //设置窗口在左面的位置 return TRUE; // 表示已经初始化 case WM_COMMAND: if(LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) { EndDialog(hWnd,TRUE); //只用于模式对话框 return TRUE; } break; } return FALSE;//消息没有被处理,交给父窗口继续处理 } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPSTR lpCmdLine, int nShowCmd) { hdicon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1) );//这句代码的位置很重要,刚开始放在对话框过程中的WM_INITDIALOG下,弄了好久都没有出现 //程序图标,这是因为程序窗口在初始化的时候图标已经加载了默认值。所以如果要现实就要放在这里 DialogBox(hInstance, (LPCTSTR)(IDD_DIALOG1), NULL, (DLGPROC)DialogProc);//IDD_DIALOG1是对话框资源的ID return 0; }