今天图老师小编要向大家分享个在对话框中进行消息映射教程,过程简单易学,相信聪明的你一定能轻松get!
【 tulaoshi.com - 编程语言 】
利用对话框的一个好处是可以利用ClassWizard对对话框中各个控件产生的消息进行映射,ClassWizrd可以列出各种控件可以使用的消息,并能自动产生代码。在本节中我们以一个例子来讲解如何在对话框中对子窗口消息进行映射同时还讲解如何对对话框中的子窗口进行初始化。
首先我们产生编辑好一个对话框,如图,
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
在对话框中使用的控件和ID号如下表:
ID
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)类型
IDC_RADIO_TEST_1
圆形按钮
IDC_RADIO_TEST_2
圆形按钮
IDC_BUTTON_TEST
按钮
IDC_CHECK_TEST
检查按钮
IDC_TREE_TEST
树形控件
IDC_LIST_CTRL
List Ctrl
IDC_TAB_CTRL
Tab Ctrl
IDC_LIST_TEST
列表框
IDC_COMBO_TEST
组合框
IDC_EDIT_TEST
输入框
首先我们需要在对话框的OnInitDialog()函数中对各个控件进行初始化,这里我们使用CWnd* GetDlgItem( int nID )来通过ID号得到子窗口指针。(类似的函数还有UINT GetDlgItemInt( int nID, BOOL* lpTrans = NULL, BOOL bSigned = TRUE ) 通过ID号得到子窗口中输入的数字,int GetDlgItemText( int nID, CString& rString ) 通过ID号得到子窗口中输入的文字)。代码如下:
BOOL CMy54_s1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
/*添加初始化代码*/
//初始化输入框
((CEdit*)GetDlgItem(IDC_EDIT_TEST))-SetWindowText("this is a edit box");
来源:http://www.tulaoshi.com/n/20160219/1600599.html