青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

天下

記錄修行的印記

WM_COMMAND(BN_CLICKED)實現

#include "stdafx.h"
// TestControl.c 
//轉自http://www.cnblogs.com/memset/archive/2013/05/16/3081082.html ,稍加修改

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // 某些 CString 構造函數將是顯式的
#include <atlbase.h>
#include <atlstr.h>

#include <WindowsX.h>

LRESULT CALLBACK ControlWindowProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);

void RegisterControlClass(HINSTANCE hInstance)
{
    WNDCLASSEXW wce={0};

    wce.cbSize = sizeof(wce);
    wce.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    wce.hInstance = hInstance;
    wce.lpfnWndProc = ControlWindowProc;
    wce.lpszClassName = L"ControlClass";
    wce.style = CS_HREDRAW|CS_VREDRAW;

    RegisterClassExW(&wce);

}



LRESULT CALLBACK ControlWindowProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
    static HBRUSH hbrBlack,hbrRed;
    switch(uMsg)
    {
    case WM_CREATE:
        {
            hbrBlack = CreateSolidBrush(#000000);
            hbrRed = CreateSolidBrush(#ff0000);

            return 0;
        }
    case WM_PAINT:
        {
            PAINTSTRUCT ps;
            HDC hdc;
            hdc = BeginPaint(hWnd,&ps);
            SelectObject(hdc,hbrBlack);
            Rectangle(hdc,0,0,100,50);

            {
                CString text;
                ::GetWindowText(hWnd,text.GetBuffer(100),100);
                text.ReleaseBuffer();
                TextOutW(hdc,10,10,text,text.GetLength());
            }

            EndPaint(hWnd,&ps);
            return 0;

        }
    case WM_LBUTTONDOWN:
        {
            HDC hdc;
            hdc = GetDC(hWnd);
            SelectObject(hdc,hbrRed);
            Rectangle(hdc,0,0,100,50);
            SetTextColor(hdc,#ff0000);
            {
                CString text;
                ::GetWindowText(hWnd,text.GetBuffer(100),100);
                text.ReleaseBuffer();
                TextOutW(hdc,10,10,text,text.GetLength());
            }
            ReleaseDC(hWnd,hdc);
            SetCapture(hWnd);
            return 0;
        }
    case WM_LBUTTONUP:
        {
            HDC hdc;
            hdc = GetDC(hWnd);
            SelectObject(hdc,hbrBlack);
            Rectangle(hdc,0,0,100,50);
            SetTextColor(hdc,#000000);
            {
                CString text;
                ::GetWindowText(hWnd,text.GetBuffer(100),100);
                text.ReleaseBuffer();
                TextOutW(hdc,10,10,text,text.GetLength());
            }
            ReleaseDC(hWnd,hdc);
        
            BOOL bRet =  (GetCapture()==hWnd);
            ReleaseCapture();

            HWND parent = ::GetParent(hWnd);
            HMENU hMenu = ::GetMenu(hWnd);

            //POINT pt = MAKEPOINTS(lParam);
            POINT pt = { GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam) };
            RECT rect;
            ::GetClientRect(hWnd,&rect);
            bRet = bRet && ::PtInRect(&rect,pt);
            if (bRet)
                ::SendMessage(parent,WM_COMMAND,(WPARAM)hMenu,NULL);
            return 0;
        }
    case WM_DESTROY:
        DeleteObject(hbrBlack);
        DeleteObject(hbrRed);
        return 0;
    }
    return DefWindowProcW(hWnd,uMsg,wParam,lParam);
}


LRESULT CALLBACK MainWindowProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
    switch(uMsg)
    {
    case WM_CREATE:
        {
            HINSTANCE hInstance = GetModuleHandleW(NULL);

            CreateWindowExW(0,L"Button",L"按鍵",WS_CHILD|WS_VISIBLE,0,0,100,50,hWnd,(HMENU)101,hInstance,NULL);
            CreateWindowExW(0,L"ControlClass",L"哈哈",WS_CHILD|WS_VISIBLE,200,200,100,50,hWnd,(HMENU)100,hInstance,NULL);
            CreateWindowExW(0,L"ControlClass",L"呵呵",WS_CHILD|WS_VISIBLE,400,400,100,50,hWnd,(HMENU)102,hInstance,NULL);

            return 0;
        }
    case WM_COMMAND:
        {
            int wmId    = LOWORD(wParam);
            CString msg;
            msg.Format(L"hWmd:0x%08x,wmId:%d",hWnd,wmId);
            MessageBox(hWnd,msg,L"提示",MB_OK|MB_ICONINFORMATION);
        }
        break;
    case WM_DESTROY:
        PostQuitMessage(0);
        return 0;
    default:
        break;
    }
    return DefWindowProcW(hWnd,uMsg,wParam,lParam);
}

int WINAPI wWinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPWSTR lpCmdLine,int nShowCmd)
{
    HWND hWnd;
    WNDCLASSEXW wce = {0};
    MSG msg;

    RegisterControlClass(hInstance);

    wce.cbSize = sizeof(wce);
    wce.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    wce.hCursor = LoadCursor(NULL,IDC_ARROW);
    wce.hIcon = LoadIcon(NULL,IDI_APPLICATION);
    wce.hInstance = hInstance;
    wce.lpfnWndProc = MainWindowProc;
    wce.lpszClassName = L"MyWindowClass";
    wce.style = CS_HREDRAW|CS_VREDRAW;

    RegisterClassExW(&wce);

    hWnd = CreateWindowExW(0,L"MyWindowClass",L"測試",WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

    UpdateWindow(hWnd);
    ShowWindow(hWnd,nShowCmd);

    while(GetMessageW(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessageW(&msg);
    }   
    return 0;
}

posted on 2016-01-20 11:23 天下 閱讀(1015) 評論(0)  編輯 收藏 引用 所屬分類: C/C++Win32

<2016年1月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

導航

統計

常用鏈接

留言簿(4)

隨筆分類(378)

隨筆檔案(329)

鏈接

最新隨筆

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲乱码国产乱码精品精98午夜| 狠狠做深爱婷婷久久综合一区| 亚洲午夜激情网页| 99国产精品| 亚洲一区二区三区国产| 亚洲一区日韩在线| 久久国产精品99国产精| 久久在线视频| 欧美精品一区二区三区在线播放 | 欧美日韩一区二区三区免费| 欧美视频一区二区三区…| 欧美午夜在线观看| 国产一区二区视频在线观看| 亚洲国产欧美不卡在线观看| 一本久久a久久免费精品不卡| 午夜日韩在线| 欧美成人国产一区二区| 一区二区三区视频在线看| 欧美一进一出视频| 蜜臀av国产精品久久久久| 欧美视频福利| 午夜伦理片一区| 久久久夜精品| 欧美日韩亚洲综合在线| 国内精品模特av私拍在线观看| 日韩写真在线| 久久久.com| 日韩一区二区高清| 蜜桃av久久久亚洲精品| 国产美女高潮久久白浆| 日韩手机在线导航| 你懂的亚洲视频| 香蕉久久国产| 国产精品vvv| 一区二区av在线| 欧美aⅴ99久久黑人专区| 亚洲主播在线播放| 欧美精品少妇一区二区三区| ●精品国产综合乱码久久久久| 性欧美video另类hd性玩具| 亚洲激情偷拍| 久久成人免费日本黄色| 国产精品久久久久av| 日韩亚洲精品视频| 欧美激情小视频| 久久尤物视频| 欲香欲色天天天综合和网| 欧美中文字幕在线| 亚洲综合色噜噜狠狠| 欧美网站在线观看| 亚洲色图综合久久| 亚洲欧洲在线看| 欧美成人精精品一区二区频| 亚洲国产精品一区二区三区| 媚黑女一区二区| 久久精品亚洲一区| 狠狠操狠狠色综合网| 久久久亚洲欧洲日产国码αv| 午夜精品久久久久久 | 亚洲美女尤物影院| 蜜桃视频一区| 狼狼综合久久久久综合网| 欲香欲色天天天综合和网| 免费成人激情视频| 免费成人激情视频| 亚洲国产美女| 亚洲日产国产精品| 欧美日韩视频在线一区二区| 一区二区三区久久久| 一区二区三区|亚洲午夜| 国产精品成人在线观看| 欧美一区二区成人6969| 欧美在线视屏 | 鲁鲁狠狠狠7777一区二区| 久久久精品国产免费观看同学| 国模私拍视频一区| 欧美大片一区二区| 欧美激情按摩在线| 亚洲一区二区在线免费观看| 午夜精品成人在线视频| 性欧美xxxx视频在线观看| 国产伦理精品不卡| 蜜桃久久av一区| 欧美剧在线观看| 欧美一区二区三区四区在线观看地址 | 欧美在线播放| 亚洲欧洲精品一区二区精品久久久 | 一本色道久久综合亚洲精品婷婷| 一二三区精品| 韩国成人理伦片免费播放| 亚洲国产成人久久综合一区| 欧美视频1区| 免费成人黄色| 国产精品电影在线观看| 久久精品视频免费播放| 免费人成网站在线观看欧美高清| 亚洲视频精选在线| 久久久久久穴| 亚洲一区三区在线观看| 久久久久99| 亚洲视频中文字幕| 久久理论片午夜琪琪电影网| 中文一区在线| 另类综合日韩欧美亚洲| 午夜精品www| 欧美美女视频| 免费人成网站在线观看欧美高清| 国产精品羞羞答答xxdd| 亚洲欧洲一区| 亚洲国产精品尤物yw在线观看| 亚洲视频在线一区| 日韩视频一区二区在线观看 | 极品少妇一区二区三区精品视频| 99精品国产一区二区青青牛奶| 激情五月综合色婷婷一区二区| 一区二区三区视频在线| 日韩亚洲国产欧美| 免费观看一区| 麻豆成人综合网| 好看不卡的中文字幕| 亚洲影视在线| 亚洲欧美激情一区| 欧美日韩一区在线观看视频| 亚洲福利视频一区| 在线欧美日韩国产| 久久久久久久综合日本| 久久一区二区三区四区五区| 国产午夜精品理论片a级探花| 亚洲一区免费| 新狼窝色av性久久久久久| 欧美日韩免费一区二区三区| 亚洲国产日韩一区| 亚洲精品乱码久久久久久黑人 | 欧美怡红院视频| 欧美午夜免费影院| 午夜在线精品偷拍| 欧美日韩国内自拍| 亚洲精品乱码久久久久久蜜桃91 | 国产精品99久久久久久www| 欧美国产在线观看| 亚洲国产一区二区三区a毛片| 亚洲黄色精品| 欧美精品一区二区在线观看| 亚洲日本欧美日韩高观看| 99ri日韩精品视频| 欧美网站在线| 性欧美暴力猛交69hd| 久久人人爽国产| 亚洲国产日韩欧美综合久久| 欧美区日韩区| 午夜精品久久久久久久99热浪潮 | 亚洲一区视频在线| 国产精品美女一区二区| 香蕉久久a毛片| 欧美高清在线视频观看不卡| 日韩视频免费在线观看| 欧美日韩在线播放| 小嫩嫩精品导航| 欧美激情亚洲激情| 午夜在线不卡| 亚洲国产裸拍裸体视频在线观看乱了| 欧美肥婆在线| 亚洲字幕一区二区| 欧美成黄导航| 亚洲欧美日韩精品在线| 一区视频在线| 国产精品欧美一区喷水| 久久久久久久久久久久久9999 | 亚洲图片欧洲图片av| 久久婷婷蜜乳一本欲蜜臀| 亚洲精品在线电影| 国产欧美丝祙| 欧美1区2区3区| 亚洲欧美成人精品| 欧美国产日韩一区二区三区| 亚洲一区影音先锋| 亚洲人成7777| 国产一区二区av| 欧美日韩一区二区三区| 久久九九久精品国产免费直播| 日韩午夜高潮| 欧美wwwwww| 久久九九有精品国产23| 亚洲直播在线一区| 亚洲人成在线播放网站岛国| 好男人免费精品视频| 国产精品久久激情| 欧美精品久久99| 久久精品91| 亚洲男人的天堂在线| 日韩一区二区免费看| 欧美激情欧美狂野欧美精品 | 午夜精品成人在线| 亚洲经典自拍| 亚洲电影成人| 国产一区二区成人| 国产乱码精品一区二区三区五月婷 | 亚洲国产精品女人久久久| 国内偷自视频区视频综合| 在线中文字幕日韩|