孫鑫視頻教程第一課——視窗的建立

來源:互聯網
上載者:User

  

#include <windows.h>#include <stdio.h>//回呼函數LRESULT CALLBACK WinSunProc(          HWND hwnd,    UINT uMsg,    WPARAM wParam,    LPARAM lParam);//入口函數int WINAPI WinMain(          HINSTANCE hInstance,    HINSTANCE hPrevInstance,    LPSTR lpCmdLine,    int nCmdShow){WNDCLASS wndcls;wndcls.cbClsExtra = 0;wndcls.cbWndExtra = 0;wndcls.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);wndcls.hCursor = LoadCursor(NULL, IDC_HAND);wndcls.hIcon = LoadIcon(NULL, IDI_APPLICATION);wndcls.hInstance = hInstance;wndcls.lpfnWndProc = WinSunProc;wndcls.lpszClassName = TEXT("weixin2003");wndcls.lpszMenuName = NULL;wndcls.style = CS_HREDRAW | CS_VREDRAW;//垂直從化,水平從化!RegisterClass(&wndcls);//註冊一個視窗類別!HWND hwnd;//建立一個視窗hwnd = CreateWindow(TEXT("weixin2003"), TEXT("北京維新科學技術培訓中心"), WS_OVERLAPPEDWINDOW, 50, 50, 800, 600, NULL, NULL, hInstance, NULL);ShowWindow(hwnd, SW_NORMAL);//顯示一個視窗!UpdateWindow(hwnd);//更新一個視窗//訊息迴圈!MSG msg;while (GetMessage(&msg, NULL, 0, 0))//接收一切的訊息!{TranslateMessage(&msg);DispatchMessage(&msg);}return 0;}LRESULT CALLBACK WinSunProc(          HWND hwnd,    UINT uMsg,    WPARAM wParam,    LPARAM lParam){switch(uMsg){case WM_CHAR:char szChar[20];sprintf(szChar, "char is %d", wParam);MessageBox(hwnd, szChar, TEXT("weixin"), 0);break;case WM_PAINT:HDC hDC;PAINTSTRUCT ps;        hDC = BeginPaint(hwnd, &ps);TextOut(hDC, 0, 0, TEXT("維新培訓"), strlen("維新培訓"));EndPaint(hwnd, &ps);break;case WM_CLOSE:if (IDYES == MessageBox(hwnd, TEXT("是否真的結束?"), TEXT("weixin"), MB_YESNO)){DestroyWindow(hwnd);}break;case WM_LBUTTONDOWN:MessageBox(hwnd, TEXT("mouse clicked"), TEXT("weixin"), 0);HDC hdc;hdc = GetDC(hwnd);TextOut(hdc, 0, 50, TEXT("電腦程式設計語言培訓"), strlen("電腦程式設計語言培訓"));ReleaseDC(hwnd, hdc);break;case WM_DESTROY:PostQuitMessage(0);break;default:return DefWindowProc(hwnd, uMsg, wParam, lParam);}return 0;}

     第一課主要是講解window運行原理,根據如何設計一個視窗,建立視窗,註冊視窗,顯示視窗,更新視窗,訊息迴圈這一條線索來編程的,如果你可以安裝這一條線索來寫你的代碼就不會很難的!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.