当前位置:文档之家› windows的实验报告(完整版)

windows的实验报告(完整版)

中南民族大学计算机科学学院实验报告课程 Windows程序设计年级专业学生学号指导老师实验一实验标题:按钮控件使用方法一、实验目的:学会使用按钮控件的使用方法。

二、实验内容及步骤:1.新建项目,设置对话框如下所示:2.双击头文件“ankjDlg.h”,在类构造函数class CankjDlg : public CDialog中定义public:CButton game1,game2,game3,game4,game5,game6;CButton addr1,addr2,addr3,addr4;3.双击文件“ankjDlg.cpp”,在void CankjDlg::DoDataExchange(CDataExchange* pDX)中添加ID与变量之间的映射。

DDX_Control(pDX, IDC_RADIO1, addr1);DDX_Control(pDX, IDC_RADIO2, addr2);DDX_Control(pDX, IDC_RADIO3, addr3);DDX_Control(pDX, IDC_RADIO4, addr4);DDX_Control(pDX, IDC_CHECK1, game1);DDX_Control(pDX, IDC_CHECK2, game2);DDX_Control(pDX, IDC_CHECK3, game3);DDX_Control(pDX, IDC_CHECK4, game4);DDX_Control(pDX, IDC_CHECK5, game5);DDX_Control(pDX, IDC_CHECK6, game6);4.在文件“ankjDlg.cpp”的BOOL CankjDlg::OnInitDialog()中的“// TODO: 在此添加额外的初始化代码”后面添加初始化代码:this->addr1.SetCheck ( BST_CHECKED ) ;this->game1.SetCheck ( BST_CHECKED ) ;this->game2.SetCheck ( BST_CHECKED ) ;this->game3.SetCheck ( BST_CHECKED ) ;this->game4.SetCheck ( BST_CHECKED ) ;this->game5.SetCheck ( BST_CHECKED ) ;this->game6.SetCheck ( BST_CHECKED ) ;5. 双击“确定”按钮,添加代码:CString szMsg ;szMsg += L"您的所在地:" ;if ( this->addr1.GetCheck () == BST_CHECKED )szMsg += L"北京\n" ;else if ( this->addr2.GetCheck () == BST_CHECKED ) szMsg += L"上海\n" ;else if ( this->addr3.GetCheck () == BST_CHECKED ) szMsg += L"厦门\n" ;else if ( this->addr4.GetCheck () == BST_CHECKED ) szMsg += L"杭州\n" ;szMsg += L"您的兴趣爱好:" ;if ( this->game1.GetCheck() == BST_CHECKED )szMsg += L"体育运动" ;if ( this->game2.GetCheck() == BST_CHECKED )szMsg += L"影视娱乐" ;if ( this->game3.GetCheck() == BST_CHECKED )szMsg += L"黑客技术" ;if ( this->game4.GetCheck() == BST_CHECKED )szMsg += L"旅游观光" ;if ( this->game5.GetCheck() == BST_CHECKED )szMsg += L"休闲棋牌" ;if ( this->game6.GetCheck() == BST_CHECKED )szMsg += L"网络游戏" ;this->MessageBox ( szMsg, L"您的选择" ) ;三、调试及结果:①调试的初始界面:②选择后的输出:实验心得:实验二实验标题:组合框一、实验目的:了解组合框的概念,并掌握组合框的概念。

二、实验内容及步骤:1.新建项目,设置对话框如下所示注:①.在编辑右边的组合框时,右击该组合框,单击“属性”,在type选项中把默认的“Dropdown”改为“Drop List”。

②.在编辑当前选择下的两个示例编辑框时,右击该编辑框,单击“属性”,把“Read Only”选择为“true”。

2.双击zuhekuangDlg.h头文件,并定义水果名称、当前水果名称和组合框对象。

public:CString szFruitName;CString szCurName,szCurName2;CComboBox MyComboBox,MyComboBox2;3.双击组合框1 ,添加代码。

int nCurSel = this->MyComboBox.GetCurSel () ;if ( nCurSel != LB_ERR ){this->MyComboBox.GetLBText(nCurSel, this->szCurName) ;this->UpdateData ( FALSE ) ;}4.双击组合框2,添加代码。

int nCurSel = this->MyComboBox2.GetCurSel () ;if ( nCurSel != LB_ERR ){this->MyComboBox2.GetLBText(nCurSel, this->szCurName2) ;this->UpdateData ( FALSE ) ;}5.添加ID和变量之间的映射。

在void CzuhekuangDlg::DoDataExchange(CDataExchange* pDX)函数体内中CDialog::DoDataExchange(pDX);的后面添加如下代码:DDX_Control(pDX, IDC_COMBO1, MyComboBox);DDX_Text(pDX, IDC_EDIT1, szFruitName);DDX_Text(pDX, IDC_EDIT2, szCurName);DDX_Control(pDX, IDC_COMBO2, MyComboBox2);DDX_Text(pDX,IDC_EDIT3,szCurName2);其中DDX_****(固定为PDX,添加各个编辑框的ID号,自己新定义的变量)。

如果没映射,或映射不正确,在调试时会出现如下提示框;6.进行初始化:即双击zuhekuangDlg.cpp,在BOOL CzuhekuangDlg::OnInitDialog()函数体内的“// TODO: 在此添加额外的初始化代码”的后面添加代码。

代码如下:this->MyComboBox.AddString ( L"苹果" ) ;this->MyComboBox.AddString ( L"香蕉" ) ;this->MyComboBox.AddString ( L"西瓜" ) ;this->MyComboBox.SetCurSel ( 0 ) ;this->OnCbnSelchangeCombo () ;this->MyComboBox2.AddString ( L"苹果" ) ;this->MyComboBox2.AddString ( L"香蕉" ) ;this->MyComboBox2.AddString ( L"西瓜" ) ;this->MyComboBox2.SetCurSel ( 0 ) ;this->OnCbnSelchangeCombo2 () ;7.为“添加”按钮添加代码。

双击“添加”按钮元件,添加如下代码if ( this->szFruitName.IsEmpty() == TRUE )this->MessageBox ( L"请输入水果名称", L"Error" ) ;else{this->MyComboBox.AddString ( this->szFruitName ) ;this->MyComboBox2.AddString ( this->szFruitName ) ;}8.实时更新输入文本。

双击最底下的编辑框,添加如下代码:this->UpdateData();如果没有此代码段,每次按“添加”按钮会出现:三、实验调试与结果:四、实验心得:实验三实验标题:模拟键盘消息一、实验目的学会如何使用Postmassage和keybd_event来模拟键盘信息。

二、实验内容和步骤:1.新建项目,设置对话框如下所示2.双击按钮“模拟↑键”添加代码:this->PostMessage ( WM_KEYDOWN, VK_UP, 0 ) ;双击按钮“模拟↓键”添加代码:this->PostMessage ( WM_KEYDOWN, VK_DOWN, 0 ) ;双击按钮“模拟←键”添加代码:this->PostMessage ( WM_KEYDOWN, VK_LEFT, 0 ) ;双击按钮“模拟→键”添加代码:this->PostMessage ( WM_KEYDOWN, VK_RIGHT, 0 ) ;3.双击按钮“Win+R”添加代码:keybd_event ( VK_LWIN, 0, 0, 0 ) ;keybd_event ( 'R', 0, 0, 0 ) ;keybd_event ( 'R', 0, KEYEVENTF_KEYUP, 0 ) ;keybd_event ( VK_LWIN, 0, KEYEVENTF_KEYUP, 0 ) ;双击按钮“Win+U”添加代码:keybd_event ( VK_LWIN, 0, 0, 0 ) ;keybd_event ( 'U', 0, 0, 0 ) ;keybd_event ( 'U', 0, KEYEVENTF_KEYUP, 0 ) ;keybd_event ( VK_LWIN, 0, KEYEVENTF_KEYUP, 0 ) ;双击按钮“Win+Shift”添加代码:keybd_event ( VK_CONTROL, 0, 0, 0 ) ;keybd_event ( VK_SHIFT, 0, 0, 0 ) ;keybd_event ( VK_SHIFT, 0, KEYEVENTF_KEYUP, 0 ) ;keybd_event ( VK_CONTROL, 0, KEYEVENTF_KEYUP, 0 ) ;双击代码“Alt+Tab”添加代码:keybd_event ( VK_MENU, 0, 0, 0 ) ;keybd_event ( VK_TAB, 0, 0, 0 ) ;Sleep ( 1000 ) ; //切换应用程序窗口停留时间,单位为mskeybd_event ( VK_TAB, 0, KEYEVENTF_KEYUP, 0 ) ;keybd_event ( VK_MENU, 0, KEYEVENTF_KEYUP, 0 ) ;三、调试与结果:实验心得:实验四实验标题:创建模态对话框一、实验目的:学习并掌握如何使用MFC的CDialog实现模态对话框。

相关主题