• windows 编程 第一程序


    由于windows编程是基于window操作系统的编程,window内众多函数、方法已经被封装,因此window编程得注意编程的格式

    window编程顺序: 1  设计一个窗体

             2  注册这个窗体

               3  创建这个窗体

             4   更新这个窗体的内容

               5  由于windows系统是基于消息响应的,所以程序必须得获取系统消息

             6 获取消息后,然后再响应消息,即处理消息        

    #include<windows.h>

    LRESULT CALLBACK WndProc( HWND hwnd,UINT message, WPARAM wParam, LPARAM lParam);   // 申明消息处理函数

    int WINAPI WinMain( HINSTANCE hInstance,
    HINSTANCE prehInstance,
    LPTSTR lpCmdLine,
    int nShow
    )
    {
    // 1. 创建一个窗体类
    WNDCLASS ws;

    ws.cbClsExtra = 0;
    ws.cbWndExtra = 0;
    ws.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    ws.hCursor = NULL;
    ws.hIcon = NULL;
    ws.hInstance = hInstance;
    ws.lpfnWndProc = WndProc;
    ws.lpszClassName = TEXT("Hello");
    ws.lpszMenuName =NULL;
    ws.style = CS_VREDRAW | CS_HREDRAW;

    // 2. 注册窗体类
    if( !RegisterClass(&ws) ) return -1;

    // 3.创建窗体
    HWND hwnd = CreateWindow( TEXT("Hello"), TEXT("my first window"), WS_VISIBLE|WS_BORDER,10,10,400,300,NULL,NULL,hInstance,NULL);

    // 4.更新窗体内容
    UpdateWindow(hwnd);
    ShowWindow(hwnd,SW_SHOWNORMAL);

    // 5.获取系统消息
    MSG msg;
    while( GetMessage( &msg, NULL, 0, 0 ) )
    {
    TranslateMessage( &msg );
    DispatchMessage( &msg );
    }
    return 1;
    }


    // 6.消息处理
    LRESULT CALLBACK WndProc( HWND hwnd,UINT message, WPARAM wParam, LPARAM lParam)
    {
    if( message == WM_DESTROY )
    {
    PostQuitMessage(1);
    }
    return DefWindowProc( hwnd, message, wParam, lParam );
    }

  • 相关阅读:
    Android中Handler的使用
    Android ListView使用
    Android ListView的XML属性
    Android ListView几个重要属性
    Android设置日期DatePickerDialog
    Android资源文件说明
    Android使用xml文件中的array资源
    Android:控件Spinner实现下拉列表
    如何搭建个人博客网站(Mac)
    SVProgressHUD源码解读(2.0.3)
  • 原文地址:https://www.cnblogs.com/ATMvip/p/2946754.html
Copyright © 2020-2023  润新知