标题:窗口创建失败,求教高手
只看楼主
lizezhonglaile
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2008-9-20
 问题点数:0 回复次数:3 
窗口创建失败,求教高手
WNDCLASS wndcls;
    wndcls.cbClsExtra=0;
    wndcls.cbWndExtra=0;
    wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
    wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);
    wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
    wndcls.hInstance=hInstance;
    wndcls.lpfnWndProc=WinProc;
    wndcls.lpszClassName="Weixin2003";
    wndcls.lpszMenuName=NULL;
    wndcls.style=CS_HREDRAW | CS_VREDRAW;
    wndcls.hInstance=hInstance;
    RegisterClass(&wndcls);
    
    HWND hwnd;
    hwnd=CreateWindow(TEXT ("Weixin2003"),
“标题",WS_VISIBLE,0,0,600,400,NULL,NULL,hInstance,NULL);

hwnd为空,不知道为什么。
还有编译执行结束之后,进程仍可在任务管理器中看到,造成再次编译时不能重新改写exe
搜索更多相关主题的帖子: 窗口 失败 
2008-11-02 19:07
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:0 
ShowWindow(hwnd,1);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0))
    {    
        TranslateMessage(&msg);        
        DispatchMessage(&msg);
    }
这几句写了吗

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2008-11-02 22:25
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:0 
在消息函数中加上对WM_DESTROY:的处理
LRESULT _stdcall WndProc (HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
    {
               case WM_DESTROY:        
        PostQuitMessage(0);
        return 0;
         }
    return DefWindowProc(hwnd,message,wParam,lParam);
}

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2008-11-02 22:36
lizezhonglaile
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2008-9-20
得分:0 
谢谢以上几位的回答。
消息处理函数都写了。问题出在前边。CreateWindow显然是失败了,因为hwnd为空,和处理函数没有关系。
这里应该解释的是CreateWindow为什么会失败
2008-11-04 11:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-242041-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.163563 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved