設置static控件背景顏色、控件字體的背景顏色和控件字體的顏色

#include <windows.h>

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

HINSTANCE hInst;

/* The 'main' function of Win32 GUI programs: this is where execution starts */
int WINAPI WinMain(
    HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow)
{
 
    static TCHAR szClassName[] = TEXT("HelloWin"); /*窗口類名*/
    HWND hwnd;  /*窗口句柄*/
    MSG msg;    /*消息*/
    WNDCLASS wndclass;   /*窗口類*/ 
    
    hInst = hInstance;
    
    /***********第一步:註冊窗口類*************/
    /*爲窗口類各個字段賦值*/
    wndclass.style = CS_HREDRAW | CS_VREDRAW;  /*窗口風格*/
    wndclass.lpfnWndProc  = WndProc; /*窗口過程*/
    wndclass.cbClsExtra   = 0;
    wndclass.cbWndExtra   = 0;
    wndclass.hInstance    = hInstance;  /*當前窗口句柄*/
    wndclass.hIcon        = LoadIcon(NULL, IDI_APPLICATION);  /*窗口圖標*/
    wndclass.hCursor      = LoadCursor(NULL, IDC_ARROW);/*鼠標樣式*/
    wndclass.hbrBackground= (HBRUSH)GetStockObject(WHITE_BRUSH);/*窗口背景畫刷*/
    wndclass.lpszMenuName = NULL;  /*窗口菜單*/
    wndclass.lpszClassName= szClassName; /*窗口類名*/
    
    
    /*註冊窗口*/
    RegisterClass(&wndclass);
    
    /*************第二步:建立窗口(並讓窗口顯示出來)***************/
    hwnd = CreateWindow(
        szClassName,  /*窗口名字*/
        TEXT("Welcome"), /*窗口標題*/
        WS_OVERLAPPEDWINDOW,  /*窗口風格*/
        CW_USEDEFAULT,  /*初始化x軸的位置*/
        CW_USEDEFAULT,  /*初始化y軸的位置*/
        640,  /*窗口寬度*/
        480,  /*窗口高度*/
        NULL, /*父窗口句柄*/
        NULL, /*窗口菜單句柄*/
        hInstance, /*當前窗口句柄*/
        NULL    /*不使用該值*/
        );
        
    if(hwnd == NULL)
    {
        MessageBox(NULL, "建立窗口出錯!", "Error", MB_OK);
        return -1;
    }

        
    /*顯示窗口*/
    ShowWindow(hwnd, nCmdShow);
    /*更新(繪製)窗口*/
    UpdateWindow(hwnd);
    
    
    /*************第三步:消息循環*************/
    while(GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);  /*翻譯消息*/
        DispatchMessage(&msg);   /*分派消息*/
    }
    return msg.wParam; /*當GetMessage程序返回FALSE是程序結束*/
}

/*************第四步:窗口過程*****************/
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
    
    static HFONT hFont; // 邏輯字體
    static HWND hLabUsername;  //靜態文本框--用戶名
    static HWND hLabPassword;  //靜態文本框--密碼
    static HWND hEditUsername; //單行文本輸入框
    static HWND hEditPassword; //密碼輸入框
    static HWND hBtnLogin;     //登陸按鈕 
    static HBRUSH hBrush;      //畫刷 
    
    //定義緩衝區
    TCHAR szUsername[100];
    TCHAR szPassword[100];
    TCHAR szUserInfo[200]; 
    
    switch(message)
    {
        case WM_CREATE:
        {
            //建立畫刷
            hBrush = CreateSolidBrush(RGB(0X41, 0X96, 0X4F)); //翠綠色 
            
            
            //建立邏輯字體 
            hFont = CreateFont(
                -14/*高度*/, -7/*寬度*/,0,0,400/*通常設值爲400*/,
                FALSE/*不帶斜體*/, FALSE/*不帶下劃線*/,FALSE/*不帶刪除線*/,
                DEFAULT_CHARSET, //使用默認字符集
                OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
                DEFAULT_QUALITY, //默認輸出質量
                FF_DONTCARE, //不指定字體族
                TEXT("微軟雅黑") //字體名
            );
            
            //建立靜態文本框控件--用戶名
            hLabUsername = CreateWindow(
                TEXT("static"),
                TEXT("用戶名"),
                WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE/*垂直居中*/ | SS_RIGHT/*水平居右*/,
                0, 20, 70, 26,//X座標、Y座標、寬度、高度
                hWnd,
                (HMENU)1,/*控件ID*/
                hInst,
                NULL
            );
            
            //建立靜態文本框控件--密碼
            hLabPassword = CreateWindow(
                TEXT("static"),
                TEXT("密碼"),
                WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE | SS_RIGHT,
                0, 56, 70, 26,
                hWnd,
                (HMENU)2,
                hInst,
                NULL
            );
            
            //建立單行文本框輸入控件
            hEditUsername = CreateWindow(
                TEXT("edit"),
                TEXT(""),
                WS_CHILD | WS_VISIBLE | WS_BORDER | ES_AUTOHSCROLL,/*水平滾動*/
                80, 20, 200, 26,
                hWnd,
                (HMENU)3,
                hInst,
                NULL 
            );
            
            //建立密碼輸入框
            hEditPassword = CreateWindow(
                TEXT("edit"),
                TEXT(""),
                WS_CHILD | WS_VISIBLE | WS_BORDER | ES_PASSWORD/*密碼*/ | ES_AUTOHSCROLL/*水平滾動*/,
                80, 56, 200, 26,
                hWnd,
                (HMENU)4,
                hInst,
                NULL
            );
        
            //建立按鈕控件
            hBtnLogin = CreateWindow(
                TEXT("button"), //按鈕控件類名
                TEXT("登陸"),
                WS_CHILD | WS_VISIBLE | WS_BORDER | BS_FLAT/*扁平樣式*/,
                80/*X座標*/,92/*Y座標*/, 200/*寬度*/,30/*高度*/,
                hWnd,
                (HMENU)5/*控件惟一標識符*/, 
                hInst,
                NULL 
            );
        
            //依次設置控件字體
            SendMessage(hLabUsername, WM_SETFONT, (WPARAM)hFont, NULL);
            SendMessage(hLabPassword, WM_SETFONT, (WPARAM)hFont, NULL);
            SendMessage(hEditUsername, WM_SETFONT, (WPARAM)hFont, NULL);
            SendMessage(hEditPassword, WM_SETFONT, (WPARAM)hFont, NULL);
            SendMessage(hBtnLogin, WM_SETFONT, (WPARAM)hFont, NULL);
            break;
        }
        
        case WM_COMMAND:
        {
            wmId = LOWORD(wParam);
            wmEvent = HIWORD(wParam);
            switch(wmId)
            {
                case 5: //按鈕的HMENU參數 
                {
                    //獲取輸入框的數據
                    GetWindowText(hEditUsername, szUsername, 100);
                    GetWindowText(hEditPassword, szPassword, 100);
                    wsprintf(szUserInfo, TEXT("Warning:\r\nYour user name is: %s\r\nYour Password is: %s"), szUsername, szPassword);
                    MessageBox(hWnd, szUserInfo, TEXT("Information tips"), MB_ICONINFORMATION);
                    break;
                }
                default:
                {
                    //不處理的消息必定要交給defWindowProc處理
                    return DefWindowProc(hWnd, message, wParam, lParam);
                    break; 
                }
            }
            break;
        }
        
        case WM_CTLCOLORSTATIC:
        {
            return (INT_PTR)hBrush;  //這裏必須返回畫刷句柄 
        }
        
        case WM_PAINT:
        {
            hdc = BeginPaint(hWnd, &ps);
            
            //Ellipse(hdc, 0, 100, 200, 200);
            
            EndPaint(hWnd, &ps);
            break;
        }
            
        /*窗口銷燬消息*/
        case WM_DESTROY:
        {
            /*處理WM_DESTROY消息時刪除以前咱們建立的一切GDI對象*/
            DeleteObject(hFont); //刪除建立的字體
            DeleteObject(hBrush);
            PostQuitMessage(0);
            break;
        }
        default:
        {
            return DefWindowProc(hWnd, message, wParam, lParam);
        }
    }
    return 0;
}



設置控件字體的背景顏色和控件字體的顏色:windows


#include <windows.h>

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

HINSTANCE hInst;

/* The 'main' function of Win32 GUI programs: this is where execution starts */
int WINAPI WinMain(
    HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow)
{
 
    static TCHAR szClassName[] = TEXT("HelloWin"); /*窗口類名*/
    HWND hwnd;  /*窗口句柄*/
    MSG msg;    /*消息*/
    WNDCLASS wndclass;   /*窗口類*/ 
    
    hInst = hInstance;
    
    /***********第一步:註冊窗口類*************/
    /*爲窗口類各個字段賦值*/
    wndclass.style = CS_HREDRAW | CS_VREDRAW;  /*窗口風格*/
    wndclass.lpfnWndProc  = WndProc; /*窗口過程*/
    wndclass.cbClsExtra   = 0;
    wndclass.cbWndExtra   = 0;
    wndclass.hInstance    = hInstance;  /*當前窗口句柄*/
    wndclass.hIcon        = LoadIcon(NULL, IDI_APPLICATION);  /*窗口圖標*/
    wndclass.hCursor      = LoadCursor(NULL, IDC_ARROW);/*鼠標樣式*/
    wndclass.hbrBackground= (HBRUSH)GetStockObject(WHITE_BRUSH);/*窗口背景畫刷*/
    wndclass.lpszMenuName = NULL;  /*窗口菜單*/
    wndclass.lpszClassName= szClassName; /*窗口類名*/
    
    
    /*註冊窗口*/
    RegisterClass(&wndclass);
    
    /*************第二步:建立窗口(並讓窗口顯示出來)***************/
    hwnd = CreateWindow(
        szClassName,  /*窗口名字*/
        TEXT("Welcome"), /*窗口標題*/
        WS_OVERLAPPEDWINDOW,  /*窗口風格*/
        CW_USEDEFAULT,  /*初始化x軸的位置*/
        CW_USEDEFAULT,  /*初始化y軸的位置*/
        640,  /*窗口寬度*/
        480,  /*窗口高度*/
        NULL, /*父窗口句柄*/
        NULL, /*窗口菜單句柄*/
        hInstance, /*當前窗口句柄*/
        NULL    /*不使用該值*/
        );
        
    if(hwnd == NULL)
    {
        MessageBox(NULL, "建立窗口出錯!", "Error", MB_OK);
        return -1;
    }

        
    /*顯示窗口*/
    ShowWindow(hwnd, nCmdShow);
    /*更新(繪製)窗口*/
    UpdateWindow(hwnd);
    
    
    /*************第三步:消息循環*************/
    while(GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);  /*翻譯消息*/
        DispatchMessage(&msg);   /*分派消息*/
    }
    return msg.wParam; /*當GetMessage程序返回FALSE是程序結束*/
}

/*************第四步:窗口過程*****************/
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
    HDC hdcWnd;
    HDC hdcStatic;
    
    static HFONT hFont; // 邏輯字體
    static HWND hLabUsername;  //靜態文本框--用戶名
    static HWND hLabPassword;  //靜態文本框--密碼
    static HWND hEditUsername; //單行文本輸入框
    static HWND hEditPassword; //密碼輸入框
    static HWND hBtnLogin;     //登陸按鈕 
    static HBRUSH hBrush;      //畫刷 
    
    //定義緩衝區
    TCHAR szUsername[100];
    TCHAR szPassword[100];
    TCHAR szUserInfo[200]; 
    
    switch(message)
    {
        case WM_CREATE:
        {
            //建立畫刷
            hBrush = CreateSolidBrush(RGB(0X41, 0X96, 0X4F)); //翠綠色,控件的背景顏色 
            
            
            //建立邏輯字體 
            hFont = CreateFont(
                -14/*高度*/, -7/*寬度*/,0,0,400/*通常設值爲400*/,
                FALSE/*不帶斜體*/, FALSE/*不帶下劃線*/,FALSE/*不帶刪除線*/,
                DEFAULT_CHARSET, //使用默認字符集
                OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
                DEFAULT_QUALITY, //默認輸出質量
                FF_DONTCARE, //不指定字體族
                TEXT("微軟雅黑") //字體名
            );
            
            //建立靜態文本框控件--用戶名
            hLabUsername = CreateWindow(
                TEXT("static"),
                TEXT("用戶名"),
                WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE/*垂直居中*/ | SS_RIGHT/*水平居右*/,
                0, 20, 70, 26,//X座標、Y座標、寬度、高度
                hWnd,
                (HMENU)1,/*控件ID*/
                hInst,
                NULL
            );
            
            //建立靜態文本框控件--密碼
            hLabPassword = CreateWindow(
                TEXT("static"),
                TEXT("密碼"),
                WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE | SS_RIGHT,
                0, 56, 70, 26,
                hWnd,
                (HMENU)2,
                hInst,
                NULL
            );
            
            //建立單行文本框輸入控件
            hEditUsername = CreateWindow(
                TEXT("edit"),
                TEXT(""),
                WS_CHILD | WS_VISIBLE | WS_BORDER | ES_AUTOHSCROLL,/*水平滾動*/
                80, 20, 200, 26,
                hWnd,
                (HMENU)3,
                hInst,
                NULL 
            );
            
            //建立密碼輸入框
            hEditPassword = CreateWindow(
                TEXT("edit"),
                TEXT(""),
                WS_CHILD | WS_VISIBLE | WS_BORDER | ES_PASSWORD/*密碼*/ | ES_AUTOHSCROLL/*水平滾動*/,
                80, 56, 200, 26,
                hWnd,
                (HMENU)4,
                hInst,
                NULL
            );
        
            //建立按鈕控件
            hBtnLogin = CreateWindow(
                TEXT("button"), //按鈕控件類名
                TEXT("登陸"),
                WS_CHILD | WS_VISIBLE | WS_BORDER | BS_FLAT/*扁平樣式*/,
                80/*X座標*/,92/*Y座標*/, 200/*寬度*/,30/*高度*/,
                hWnd,
                (HMENU)5/*控件惟一標識符*/, 
                hInst,
                NULL 
            );
        
            //依次設置控件字體
            SendMessage(hLabUsername, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hLabPassword, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hEditUsername, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hEditPassword, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hBtnLogin, WM_SETFONT, (WPARAM)hFont, 0);
            break;
        }
        
        case WM_COMMAND:
        {
            wmId = LOWORD(wParam);
            wmEvent = HIWORD(wParam);
            switch(wmId)
            {
                case 5: //按鈕的HMENU參數 
                {
                    //獲取輸入框的數據
                    GetWindowText(hEditUsername, szUsername, 100);
                    GetWindowText(hEditPassword, szPassword, 100);
                    wsprintf(szUserInfo, TEXT("Warning:\r\nYour user name is: %s\r\nYour Password is: %s"), szUsername, szPassword);
                    MessageBox(hWnd, szUserInfo, TEXT("Information tips"), MB_ICONINFORMATION);
                    break;
                }
                default:
                {
                    //不處理的消息必定要交給defWindowProc處理
                    return DefWindowProc(hWnd, message, wParam, lParam);
                    break; 
                }
            }
            break;
        }
        
        case WM_CTLCOLORSTATIC:
        {
            hdcStatic = (HDC)wParam;
            SetTextColor(hdcStatic, RGB(255,255,255));//控件文本的字體顏色
            SetBkColor(hdcStatic, RGB(0X41, 0X96, 0X4F));//控件字體的背景顏色,注意跟以上區分 
            return (INT_PTR)hBrush;  //這裏必須返回畫刷句柄 
        }
        
        case WM_PAINT:
        {
            hdc = BeginPaint(hWnd, &ps);
            
            //Ellipse(hdc, 0, 100, 200, 200);
            
            EndPaint(hWnd, &ps);
            break;
        }
            
        /*窗口銷燬消息*/
        case WM_DESTROY:
        {
            /*處理WM_DESTROY消息時刪除以前咱們建立的一切GDI對象*/
            DeleteObject(hFont); //刪除建立的字體
            DeleteObject(hBrush);
            PostQuitMessage(0);
            break;
        }
        default:
        {
            return DefWindowProc(hWnd, message, wParam, lParam);
        }
    }
    return 0;
}





設置透明背景:字體


#include <windows.h>

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

HINSTANCE hInst;

/* The 'main' function of Win32 GUI programs: this is where execution starts */
int WINAPI WinMain(
    HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow)
{
 
    static TCHAR szClassName[] = TEXT("HelloWin"); /*窗口類名*/
    HWND hwnd;  /*窗口句柄*/
    MSG msg;    /*消息*/
    WNDCLASS wndclass;   /*窗口類*/ 
    
    hInst = hInstance;
    
    /***********第一步:註冊窗口類*************/
    /*爲窗口類各個字段賦值*/
    wndclass.style = CS_HREDRAW | CS_VREDRAW;  /*窗口風格*/
    wndclass.lpfnWndProc  = WndProc; /*窗口過程*/
    wndclass.cbClsExtra   = 0;
    wndclass.cbWndExtra   = 0;
    wndclass.hInstance    = hInstance;  /*當前窗口句柄*/
    wndclass.hIcon        = LoadIcon(NULL, IDI_APPLICATION);  /*窗口圖標*/
    wndclass.hCursor      = LoadCursor(NULL, IDC_ARROW);/*鼠標樣式*/
    wndclass.hbrBackground= (HBRUSH)GetStockObject(WHITE_BRUSH);/*窗口背景畫刷*/
    wndclass.lpszMenuName = NULL;  /*窗口菜單*/
    wndclass.lpszClassName= szClassName; /*窗口類名*/
    
    
    /*註冊窗口*/
    RegisterClass(&wndclass);
    
    /*************第二步:建立窗口(並讓窗口顯示出來)***************/
    hwnd = CreateWindow(
        szClassName,  /*窗口名字*/
        TEXT("Welcome"), /*窗口標題*/
        WS_OVERLAPPEDWINDOW,  /*窗口風格*/
        CW_USEDEFAULT,  /*初始化x軸的位置*/
        CW_USEDEFAULT,  /*初始化y軸的位置*/
        640,  /*窗口寬度*/
        480,  /*窗口高度*/
        NULL, /*父窗口句柄*/
        NULL, /*窗口菜單句柄*/
        hInstance, /*當前窗口句柄*/
        NULL    /*不使用該值*/
        );
        
    if(hwnd == NULL)
    {
        MessageBox(NULL, "建立窗口出錯!", "Error", MB_OK);
        return -1;
    }

        
    /*顯示窗口*/
    ShowWindow(hwnd, nCmdShow);
    /*更新(繪製)窗口*/
    UpdateWindow(hwnd);
    
    
    /*************第三步:消息循環*************/
    while(GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);  /*翻譯消息*/
        DispatchMessage(&msg);   /*分派消息*/
    }
    return msg.wParam; /*當GetMessage程序返回FALSE是程序結束*/
}

/*************第四步:窗口過程*****************/
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
    HDC hdcWnd;
    HDC hdcStatic;
    
    static HFONT hFont; // 邏輯字體
    static HWND hLabUsername;  //靜態文本框--用戶名
    static HWND hLabPassword;  //靜態文本框--密碼
    static HWND hEditUsername; //單行文本輸入框
    static HWND hEditPassword; //密碼輸入框
    static HWND hBtnLogin;     //登陸按鈕 
    static HBRUSH hBrush;      //畫刷 
    
    //定義緩衝區
    TCHAR szUsername[100];
    TCHAR szPassword[100];
    TCHAR szUserInfo[200]; 
    
    switch(message)
    {
        case WM_CREATE:
        {
            //建立畫刷
            hBrush = CreateSolidBrush(RGB(0X41, 0X96, 0X4F)); //翠綠色,控件的背景顏色 
            
            
            //建立邏輯字體 
            hFont = CreateFont(
                -14/*高度*/, -7/*寬度*/,0,0,400/*通常設值爲400*/,
                FALSE/*不帶斜體*/, FALSE/*不帶下劃線*/,FALSE/*不帶刪除線*/,
                DEFAULT_CHARSET, //使用默認字符集
                OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
                DEFAULT_QUALITY, //默認輸出質量
                FF_DONTCARE, //不指定字體族
                TEXT("微軟雅黑") //字體名
            );
            
            //建立靜態文本框控件--用戶名
            hLabUsername = CreateWindow(
                TEXT("static"),
                TEXT("用戶名"),
                WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE/*垂直居中*/ | SS_RIGHT/*水平居右*/,
                0, 20, 70, 26,//X座標、Y座標、寬度、高度
                hWnd,
                (HMENU)1,/*控件ID*/
                hInst,
                NULL
            );
            
            //建立靜態文本框控件--密碼
            hLabPassword = CreateWindow(
                TEXT("static"),
                TEXT("密碼"),
                WS_CHILD | WS_VISIBLE | SS_CENTERIMAGE | SS_RIGHT,
                0, 56, 70, 26,
                hWnd,
                (HMENU)2,
                hInst,
                NULL
            );
            
            //建立單行文本框輸入控件
            hEditUsername = CreateWindow(
                TEXT("edit"),
                TEXT(""),
                WS_CHILD | WS_VISIBLE | WS_BORDER | ES_AUTOHSCROLL,/*水平滾動*/
                80, 20, 200, 26,
                hWnd,
                (HMENU)3,
                hInst,
                NULL 
            );
            
            //建立密碼輸入框
            hEditPassword = CreateWindow(
                TEXT("edit"),
                TEXT(""),
                WS_CHILD | WS_VISIBLE | WS_BORDER | ES_PASSWORD/*密碼*/ | ES_AUTOHSCROLL/*水平滾動*/,
                80, 56, 200, 26,
                hWnd,
                (HMENU)4,
                hInst,
                NULL
            );
        
            //建立按鈕控件
            hBtnLogin = CreateWindow(
                TEXT("button"), //按鈕控件類名
                TEXT("登陸"),
                WS_CHILD | WS_VISIBLE | WS_BORDER | BS_FLAT/*扁平樣式*/,
                80/*X座標*/,92/*Y座標*/, 200/*寬度*/,30/*高度*/,
                hWnd,
                (HMENU)5/*控件惟一標識符*/, 
                hInst,
                NULL 
            );
        
            //依次設置控件字體
            SendMessage(hLabUsername, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hLabPassword, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hEditUsername, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hEditPassword, WM_SETFONT, (WPARAM)hFont, 0);
            SendMessage(hBtnLogin, WM_SETFONT, (WPARAM)hFont, 0);
            break;
        }
        
        case WM_COMMAND:
        {
            wmId = LOWORD(wParam);
            wmEvent = HIWORD(wParam);
            switch(wmId)
            {
                case 5: //按鈕的HMENU參數 
                {
                    //獲取輸入框的數據
                    GetWindowText(hEditUsername, szUsername, 100);
                    GetWindowText(hEditPassword, szPassword, 100);
                    wsprintf(szUserInfo, TEXT("Warning:\r\nYour user name is: %s\r\nYour Password is: %s"), szUsername, szPassword);
                    MessageBox(hWnd, szUserInfo, TEXT("Information tips"), MB_ICONINFORMATION);
                    break;
                }
                default:
                {
                    //不處理的消息必定要交給defWindowProc處理
                    return DefWindowProc(hWnd, message, wParam, lParam);
                    break; 
                }
            }
            break;
        }
        
        case WM_CTLCOLORSTATIC:
        {
            hdcStatic = (HDC)wParam;
            SetTextColor(hdcStatic, RGB(0x41, 0x96, 0x4f));//控件文本的字體顏色
            //SetBkColor(hdcStatic, RGB(0X41, 0X96, 0X4F));//控件字體的背景顏色,注意跟以上區分 
            SetBkMode(hdcStatic, TRANSPARENT);//透明背景 
            return (INT_PTR)GetStockObject(NULL_BRUSH);  //這裏返回無顏色畫刷 
        }
        
        case WM_PAINT:
        {
            hdc = BeginPaint(hWnd, &ps);
            
            //Ellipse(hdc, 0, 100, 200, 200);
            
            EndPaint(hWnd, &ps);
            break;
        }
            
        /*窗口銷燬消息*/
        case WM_DESTROY:
        {
            /*處理WM_DESTROY消息時刪除以前咱們建立的一切GDI對象*/
            DeleteObject(hFont); //刪除建立的字體
            DeleteObject(hBrush);
            PostQuitMessage(0);
            break;
        }
        default:
        {
            return DefWindowProc(hWnd, message, wParam, lParam);
        }
    }
    return 0;
}
相關文章
相關標籤/搜索