# include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
{
HWND hwnd;
MSG Msg;
WNDCLASS wndclass;
char lpszClassName[]="window";
char lpszTitle[]="My_window"; wndclass.style=0;
wndclass.lpfnWndProc=WndProc;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hInstance=hInstance;
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hIcon=LoadIcon(NULL,"icontest");
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wndclass.lpszMenuName=NULL;
wndclass.lpszClassName=lpszClassName; if(!RegisterClass(&wndclass))
{
MessageBeep(0);
return false;
} hwnd=CreateWindow(lpszClassName,lpszTitle,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd); while(GetMessage(&Msg,NULL,0,0))
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);
default:
return DefWindowProc(hwnd,message,wParam,lParam);
}
return (0);
}
以上代码是我用windowsAPI函数写的一个空白窗口,主要是想实现窗口标题左上角的图标效果。wndclass.hIcon=LoadIcon(NULL,"icontest");中的“icontest”是我定义好的一个图标资源,可运行后只是生成的可执行程序图标变成了定义的图标,而窗口标题左上角的图标未变化,仍为visual c++下默认的图标。在以前的程序里我曾用上边的方法实现了可执行程序和窗口标题栏图标的同时改变,可现在无论怎样测试,都无法再次实现。希望能得到大家的帮助,谢谢!
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
{
HWND hwnd;
MSG Msg;
WNDCLASS wndclass;
char lpszClassName[]="window";
char lpszTitle[]="My_window"; wndclass.style=0;
wndclass.lpfnWndProc=WndProc;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hInstance=hInstance;
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hIcon=LoadIcon(NULL,"icontest");
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wndclass.lpszMenuName=NULL;
wndclass.lpszClassName=lpszClassName; if(!RegisterClass(&wndclass))
{
MessageBeep(0);
return false;
} hwnd=CreateWindow(lpszClassName,lpszTitle,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd); while(GetMessage(&Msg,NULL,0,0))
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);
default:
return DefWindowProc(hwnd,message,wParam,lParam);
}
return (0);
}
以上代码是我用windowsAPI函数写的一个空白窗口,主要是想实现窗口标题左上角的图标效果。wndclass.hIcon=LoadIcon(NULL,"icontest");中的“icontest”是我定义好的一个图标资源,可运行后只是生成的可执行程序图标变成了定义的图标,而窗口标题左上角的图标未变化,仍为visual c++下默认的图标。在以前的程序里我曾用上边的方法实现了可执行程序和窗口标题栏图标的同时改变,可现在无论怎样测试,都无法再次实现。希望能得到大家的帮助,谢谢!
解决方案 »
- 属性单怎么保存所有属性页的信息???
- MFC 如何在鼠标移动到视图边界时,自动扩大视图的范围
- 抓取单帧图像是 16位,bicompression的值为844715353?是RGB565还是RGB555呢?
- 请问怎么才能触发WM_NCPAINT消息啊?
- 线程间通讯 Postmessage PostThreadMessage
- 在Shell中加入右键菜单
- CreateProcess and WaitForInputIdle
- 请教一个比较简单的问题
- 关于类的函数等的提示
- win2000中一个进程中最多可以启动多少个线程?
- 求书一本《DirectShow 开发指南》(沈阳)
- 用API编写TABCONTROL控件怎么就这么难吗??
wndclass.hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_FAN));
wndclass.hIcon=LoadIcon(NULL,"icontest"); //在注册类前完成.
invoke SendMessage,hWinMain,WM_SETICON,ICON_BIG,eax
invoke SendMessage,hWinMain,WM_SETICON,ICON_BIG,eax