窗口的图标不能改变?

cracker9527 2011-07-11 05:10:09
我照着孙鑫的第九讲视频在窗口创建之前修改窗口的光标,图标和背景 代码是这样的
在CMainFrame类的PreCreateWindow函数中编写一个自己的窗口类并注册
WNDCLASS wndcls;
wndcls.cbClsExtra=0;
wndcls.cbWndExtra=0;
wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
wndcls.hCursor=LoadCursor(NULL,IDC_HELP);
wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
wndcls.hInstance=AfxGetInstanceHandle();
wndcls.lpfnWndProc=::DefWindowProc;
wndcls.lpszMenuName=NULL;
wndcls.lpszClassName="sunxin.org";
wndcls.style=CS_HREDRAW|CS_VREDRAW;
RegisterClass(&wndcls);
cs.lpszName= "sunxin.org";

wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
这条语句是修改窗口的图标 结果程序运行 窗口的图标没有改变 在View类中添加 cs.lpszClass="sunxin.org";之后除了窗口图标没有改变 其他的都是按照设想的来的 这是为什么啊?
...全文
80 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cracker9527 2011-07-11
  • 打赏
  • 举报
回复
楼上的没有帮助 这个我也知道 不过问题是我的窗口的图标 没有被修改啊 我不知道为什么
至善者善之敌 2011-07-11
  • 打赏
  • 举报
回复
view始终履盖在frame窗口上,必须在view类的precreatewindow中,指定窗口类为刚才自己编写的这个窗口类。
BOOL CStyleView::PreCreateWindow(CREATESTRUCT& cs)
{

cs.lpszClass="sunxin.org"; //这个窗口类已经注册了,只要指定即可

return CView::PreCreateWindow(cs);
}

64,644

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧