Jiang's C++ Space

创作,也是一种学习的过程。

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::

闲话不说了,这是一种可能有问题的做法:

    int cap = GetSystemMetrics(SM_CYCAPTION);
    
int wid = GetSystemMetrics(SM_CXSCREEN);
    
int hei = GetSystemMetrics(SM_CYSCREEN);

    hWnd 
= CreateWindow(szWindowClass, szTitle, WS_NONAVDONEBUTTON|WS_VISIBLE|WS_POPUP,
        
0, cap, wid, hei-cap, NULL, NULL, hInstance, NULL);
这才是比较地道的做法:
    RECT rectWorkArea;
    SystemParametersInfo(SPI_GETWORKAREA, 
0, (PVOID)&rectWorkArea, 0);

    hWnd 
= CreateWindow(szWindowClass, TEXT(""), WS_NONAVDONEBUTTON|WS_VISIBLE|WS_POPUP,
        rectWorkArea.left, rectWorkArea.top, rectWorkArea.right
-rectWorkArea.left,
        rectWorkArea.bottom
-rectWorkArea.top, NULL, NULL, hInstance, NULL);
两种创建出来的窗口的高度可能相差几个像素,前一种方法可能导致窗口在创建完之后,有一次莫名其妙的WM_SIZE消息产生,有些东西啊,懂就是懂,不懂就是不懂……想也想不出来。
posted on 2010-08-20 15:24 Jiang Guogang 阅读(566) 评论(0)  编辑 收藏 引用 所属分类: Windows Embedded Programming

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理