搜索
查看: 1408|回复: 0
打印 上一主题 下一主题

界面编程2

[复制链接]
跳转到指定楼层
楼主
发表于 2013-10-16 19:42:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 超神级 于 2014-3-4 00:02 编辑


//前言:这是C语言(win) api编程!下面注释是我参考了一些教材!和我本人自己理解写的!
//下面注释可以不看...大多数都是我瞎写的!凭感觉!
#include "stdafx.h"
#include <windows.h>
#include <windowsx.h>
#include "dialog.h"//对话框
#include "resource.h"//资源脚本
int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)//入口!就像int main()
{

DialogBox(hInstance,MAKEINTRESOURCE(IDD_MAIN),NULL,Main_Proc);
//它的作用是从一个对话框资源中创建一个模态对话框。
        return 0;
}//上面代码相当于初始化界面!
BOOL WINAPI Main_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    switch(uMsg)
    {
        HANDLE_MSG(hWnd, WM_INITDIALOG, Main_OnInitDialog);
                //HANDLE_MSG就是告诉windows,当发生WM_COMMAND消息(发生人机交互的时候)的时候请通知
                //Main_OnCommand函数!
        HANDLE_MSG(hWnd, WM_COMMAND, Main_OnCommand);
                HANDLE_MSG(hWnd,WM_CLOSE, Main_OnClose);
    }

    return FALSE;
}//上面代码相当于windows的消息机制!什么是消息机制?在windows中一个程序可能有多种选择状态在待命
//这样就无法同时等待用户的这些动作!所以Windows 引入了消息机制(也可以叫做回调机制或者事件机制)。
//不再是程序调用操作系统的函数,而是操作系统反过来调用你的函数...简尔言之。用来人机交互的!

BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam)
{
    return TRUE;
}
void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
////发生人机交互的时候windows会把这个按钮或者菜单等id号传过来!然后让swith判断id号执行的哪个语句
{
    switch(id)
    {
        case IDC_OK:
                {
                //代码一般在switch语句里写!
                }
        break;
        default:
                break;
    }
}
//上面swith我们一般用来处理消息的!
void Main_OnClose(HWND hwnd)
{
    EndDialog(hwnd, 0);
}
//这个顾明思意!



msdn库中文版这个是链接地址!
                                  http://msdn.microsoft.com/library/zh-cn/



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表