日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

第七章 控件 windows程序设计王艳平版

發(fā)布時(shí)間:2023/12/29 windows 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第七章 控件 windows程序设计王艳平版 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
/
// PredefineClass.h文件


#define IDC_BUTTON 10 // Button按鈕
#define IDC_RADIO 11 // 單選框
#define IDC_CHECKBOX 12 // 復(fù)選框
#define IDC_STATIC 13 // 靜態(tài)文本
#define IDC_EDITTEXT 14 // 文本框




#include "afxwin.h"


class CMyApp : public CWinApp
{
public:
virtual BOOL InitInstance();
};


class CMainWindow : public CWnd
{
public:
CMainWindow();
protected:
virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);
virtual void PostNcDestroy();
afx_msg BOOL OnCreate(LPCREATESTRUCT);
DECLARE_MESSAGE_MAP()

};

CPP文件

// PredefineClass.cpp


#include "PredefineClass.h"


CMyApp theApp;


///


BOOL CMyApp::InitInstance()
{
m_pMainWnd = new CMainWindow;
m_pMainWnd->ShowWindow(m_nCmdShow);
return TRUE;
}





CMainWindow::CMainWindow()
{
LPCTSTR lpszClassName = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW,?
::LoadCursor(NULL, IDC_ARROW), (HBRUSH)(COLOR_3DFACE+1));


CreateEx(WS_EX_CLIENTEDGE, lpszClassName,?
"框架程序創(chuàng)建的窗口", WS_OVERLAPPEDWINDOW,?
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL);
}


BEGIN_MESSAGE_MAP(CMainWindow, CWnd)
ON_WM_CREATE()
END_MESSAGE_MAP()


void CMainWindow::PostNcDestroy()
{
delete this;
}




BOOL CMainWindow::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
// 創(chuàng)建三個(gè)不同風(fēng)格的按鈕
::CreateWindowEx(0, "button", "push button", WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
50, 30, 110, 30, m_hWnd, (HMENU)IDC_BUTTON, AfxGetApp()->m_hInstance, NULL);
::CreateWindowEx(0, "button", "radio button", WS_CHILD|WS_VISIBLE|BS_RADIOBUTTON,
50, 70, 110, 30, m_hWnd, (HMENU)IDC_RADIO, AfxGetApp()->m_hInstance, NULL);
::CreateWindowEx(0, "button", "check box", WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX,
50, 110, 110, 30, m_hWnd, (HMENU)IDC_CHECKBOX, AfxGetApp()->m_hInstance, NULL);


// 創(chuàng)建靜態(tài)文本
::CreateWindowEx(0, "static", "static text", WS_CHILD|WS_VISIBLE|SS_SUNKEN,
50, 150, 150, 60, m_hWnd, (HMENU)IDC_STATIC, AfxGetApp()->m_hInstance, NULL);


// 創(chuàng)建文本框
::CreateWindowEx(0, "edit", "edit text", WS_CHILD|WS_VISIBLE|WS_BORDER|ES_MULTILINE,
50, 220, 150, 60, m_hWnd, (HMENU)IDC_EDITTEXT, AfxGetApp()->m_hInstance, NULL);


return TRUE;
}


BOOL CMainWindow::OnCommand(WPARAM wParam, LPARAM lParam)
{
switch(LOWORD(wParam))
{
case IDC_BUTTON:
::MessageBox(m_hWnd, "大家好!", "Button", MB_OK);
break;


case IDC_RADIO:
{
// 是否選中單選按鈕
BOOL bChecked = ::IsDlgButtonChecked(m_hWnd, IDC_RADIO);
// 設(shè)置上面的button有效狀態(tài)
::EnableWindow(::GetDlgItem(m_hWnd, IDC_BUTTON), bChecked);
// 設(shè)置本控件狀態(tài)
::CheckDlgButton(m_hWnd, IDC_RADIO, !bChecked);
}
break;


case IDC_EDITTEXT:
{
// 如果是改變文本框中的文本,則在靜態(tài)文本框中也做相應(yīng)的修改
if(HIWORD(wParam) == EN_CHANGE)
{
char sz[256];
::GetWindowText(::GetDlgItem(m_hWnd, IDC_EDITTEXT), sz, 256);
::SetWindowText(::GetDlgItem(m_hWnd, IDC_STATIC), sz);
}
}
break;
}





return 0;
}


總結(jié)

以上是生活随笔為你收集整理的第七章 控件 windows程序设计王艳平版的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。