| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4556 人关注过本帖
标题:关于windows api 窗口的建立
取消只看楼主 加入收藏
as1069
Rank: 2
来 自:河北
等 级:论坛游民
威 望:1
帖 子:46
专家分:31
注 册:2014-6-10
结帖率:75%
收藏
已结贴  问题点数:10 回复次数:2 
关于windows api 窗口的建立
#include<windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
{
    static TCHAR szAppName[]="windows";                                     //建造一个通用的类
    HWND        hwnd;
    MSG            msg;
    WNDCLASS    wndclass;
    wndclass.style=CS_HREDRAW|CS_VREDRAW;
    wndclass.lpfnWndProc=WndProc;//小写的lp    过程
    wndclass.cbClsExtra=0;//小写的ls
    wndclass.cbWndExtra=0;
    wndclass.hInstance=hIstance;//大写的I hInstance
    wndclass.hIcon=LoadIcon (NULL,IDI_APPLICATION);//加载图标资源  大写的I
    wndclass.hCursor=LoadCursor (NULL,IDC_ARROW);
    wndclass.hbrBackground=(HBTUSH) GetStockObject (WHITE_BRUSH);
    wndclass.lpszMenuNam=NULL;
    wndclass.lpszClassName=szAppName;
    if(!RegisterClass(&wndclass))                                      //判断一个类是否合法
    {
        MessageBox (NULL,TEXT("This program requires windows xp!"),
            szAppName,MB_ICONERROR);
        return 0;
    }
    hwnd=CreateWindow(szAppName,                                       //创建一个类明确它
        TEXT("The Hello Program"),
        WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT,
        CW_USEDEFAULT,
        CW_USEDEFAULT,
        CW_USEDEFAULT,
        NULL,
        NULL,
        hInstance,
        NULL);
    ShowWindow (hwnd,iCmdShow);
    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)           //系统调用
{
    HDC            hdc;
    PAINSTRUCT    ps;
    RECT        rect;
    switch(message)
    {
        case WM_PAINT;
            hdc=BeginPaint(hwnd,&ps);
            GetClientRect(hwnd,&rect);
            DrawText(hdc,TEXT("Hello,Windows xp!"),-1,&rect,             //内容
                DT_SINGLELINE|DT_CENTER|DT_VCENTER);
            EndPaint(hwnd,&ps);
            return 0;

        case WM_DESTROY;
            PostQuitMessage(0);
            return 0;
    }
    return DefWindowProc(hwnd,message,wParam,lParam);
}

error C2065: 'hIstance' : undeclared identifier  未定义的标记符?

大家帮下我表示  已经弄了一上午了
搜索更多相关主题的帖子: windows include 通用 
2016-08-08 12:13
as1069
Rank: 2
来 自:河北
等 级:论坛游民
威 望:1
帖 子:46
专家分:31
注 册:2014-6-10
收藏
得分:0 
难道我要一个宏一个宏的学吗
是这样吗

我已入坑
2016-08-08 12:24
as1069
Rank: 2
来 自:河北
等 级:论坛游民
威 望:1
帖 子:46
专家分:31
注 册:2014-6-10
收藏
得分:0 
再问一下C语言也能实现窗口的建立吗?

我已入坑
2016-08-08 12:26
快速回复:关于windows api 窗口的建立
数据加载中...
 
   



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

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