vs2010mfc编程入门之二十二(常用控件:按钮控件buttonradio button和check box)
MFC_基本控件使用
MFC_基本控件使用MFC(Microsoft Foundation Class)是一种用于开发Windows应用程序的编程框架,它提供了一系列的类和函数,方便开发者快速地创建Windows界面和处理事件。
在MFC中,基本控件是开发应用程序的重要组成部分,它们用于显示和交互用户界面。
本文将介绍MFC中几种常用的基本控件以及它们的使用方法。
1. 按钮控件(CButton):按钮控件用于接收用户的点击操作,通常用于触发相应的事件处理函数。
创建按钮控件的方法如下:1)在资源视图中右击对应的对话框,选择“添加控件”;2)选择“按钮”并将其拖动到对话框上;3)设置按钮的属性,如ID、文本、尺寸等。
1)在资源视图中右击对应的对话框,选择“添加控件”;组合框控件允许用户从预定义的选项中进行选择,类似于下拉列表。
创建组合框控件的方法如下:1)在资源视图中右击对应的对话框,选择“添加控件”;2)选择“组合框”并将其拖动到对话框上;3)设置组合框的属性,如ID、选项列表、尺寸等。
4. 列表框控件(CListBox):列表框控件用于显示一个选项列表,并且可以支持多选。
创建列表框控件的方法如下:1)在资源视图中右击对应的对话框,选择“添加控件”;2)选择“列表框”并将其拖动到对话框上;3)设置列表框的属性,如ID、选项列表、尺寸等。
5. 树形视图控件(CTreeCtrl):树形视图控件用于显示一个层级结构的数据,类似于文件夹结构或者程序的菜单栏。
创建树形视图控件的方法如下:1)在资源视图中右击对应的对话框,选择“添加控件”;2)选择“树形视图”并将其拖动到对话框上;3)设置树形视图的属性,如ID、尺寸等;4)使用CTreeCtrl的成员函数添加、删除、修改树节点。
6. List控件(CListCtrl):1)在资源视图中右击对应的对话框,选择“添加控件”;2)选择“List控件”并将其拖动到对话框上;3)设置List控件的属性,如ID、列数、尺寸等;以上是几种常用的MFC基本控件的使用方法,通过使用这些控件,可以轻松地创建出一个功能完善、交互友好的Windows应用程序。
VC按钮控件编程
VC按钮控件编程一按钮控件(Button)二复选框checkbox三单选按钮RadioButton四CButton类的常用函数MFC的CButton类对应着3个控件,按钮控件、复选框控件和单选框控件。
一按钮控件(Button)属性ID设置控件的ID。
Caption设置在控件上显示的字符串visible是否可见group将控件分组。
help id确定控件是否具有帮助IDdisabled是否可用tab stop按tab键是否能够获得焦点default button按钮具有黑色边框。
用户在对话框中按Enter键,如窗口中没有其他命令要处理,该按钮的单击事件将要被执行。
owner draw自定义按钮。
用户需要在OnDrawItem消息处理函数中绘制按钮外观。
Icon、Bitmap用一个图标或位图代替文本Multiline能够在按钮上显示多行文本Notify按钮能够将单击或双击事件通知父窗口,一般按钮按钮能够处理的消息是click 消息,是否选择这个属性后就可以写单击或双击消息了?通过实验好像是否选择都可以执行BN_CLICKED和BN_DOUBLECLICKED消息。
flat按钮不具有3D外观。
client edge使控件边框下凹static edge控件边缘为实边框modal frame控件呈现3D效果transparent控件透明。
控件下方的窗口不会被控件掩盖。
accept files是否接受文件拖动。
用户在对话框中拖动一个文件,控件将收到WM_DROPFILES消息。
Right aligned text文本右对齐Right-to-left reading order文本从右到左显示。
主要用于阿拉伯文等中东地区的语言习惯。
二复选框checkboxAuto是单击时,自动判断和设置是否选中,如果不选择就要通过GetCheck()和SetCheck ()来判断和设置。
left text表示文本在复选框的左边。
mfc radio button用法
MFC(Microsoft Foundation Classes)是微软提供的一套用于Windows应用程序开发的类库。
在MFC中,RadioButton是一种常见的控件,用于实现单选按钮的功能。
使用MFC RadioButton控件,首先需要在对话框或窗口中添加RadioButton控件。
在Visual Studio中,可以通过拖拽控件工具箱中的RadioButton图标到对话框或窗口中,然后设置其属性。
以下是一些基本的RadioButton用法:添加RadioButton控件在对话框或窗口中添加RadioButton控件,可以通过以下步骤完成:(1)在Visual Studio中打开对话框或窗口的设计视图。
(2)从工具箱中选择RadioButton控件,然后将其拖拽到对话框或窗口中。
(3)在弹出的属性对话框中,可以设置RadioButton的属性,如ID、文本等。
处理RadioButton事件当用户选中RadioButton时,会触发一个事件。
在MFC中,可以通过为RadioButton 控件添加事件处理函数来处理该事件。
例如,假设有一个ID为IDC_RADIO1的RadioButton控件,可以为其添加一个事件处理函数OnRadio1(),然后在该函数中处理RadioButton的选中事件。
使用RadioButton控制选中状态可以使用RadioButton控件的选中状态来控制其他控件的状态。
例如,当用户选中一个RadioButton时,可以隐藏或禁用其他控件。
可以通过以下步骤实现:(1)在对话框或窗口中添加其他控件,如文本框、按钮等。
(2)在RadioButton的事件处理函数中,检查RadioButton的选中状态,然后根据需要控制其他控件的状态。
例如,如果选中状态为true,则隐藏或禁用其他控件;如果选中状态为false,则显示或启用其他控件。
使用RadioButton进行数据绑定可以将RadioButton的选中状态与数据成员变量进行绑定,以便在用户选中RadioButton时更新数据成员变量的值。
MFC Radio Button控件编程
MFC Radio Button控件编程常用函数:((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);//选上((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(FALSE);//不选上((CButton *)GetDlgItem(IDC_RADIO1))->GetCheck();返回1表示选上,0表示没选上多组和一组是一样的使用,只要搞清楚哪个是哪一组的就行了。
再为对话框添加Radio3和Radio4。
很简单,先为这些Radio Button排个顺序(这个必须要做,比如你的一组控件有Radio1,Radio2,Radio3,就把它们的TAB顺序分别设为1,2,3,并将Radio1的Group属性设为True,这样,当选中Radio1的时候和它关联的变量就是0,当选中Radio2的时候和它关联的变量就是1,依此类推),就是排列他们的TABORDER。
在对话框资源面板上Ctrl+D,然后按你自己的理想顺序用鼠标逐个点击就可以了。
不妨假设Radio1、Radio2、Radio3、Radio4分别是1、2、3、4。
Radio1和Radio3都选上Group属性,那么,1、2是一组,3、4是另外一组,因为分组的原则是在选上Group属性的这一个开始直到碰到下一个选上Group属性的。
你不妨再Ctrl+D,令Radio1、Radio2、Radio3、Radio4分别是1、3、2、4,那么Radio1和Radio3是一组,如果m_nRadio1=1,此时是Radio3被选上而不是Radio2被选上。
分好了组就分别使用它们吧。
嗯,也许你还要为它们添加鼠标单击事件,非常简单。
单选按钮控件(Radio Button)的使用关键词:单选按钮控件使用方法一、对单选按钮进行分组:每组的第一个单选按钮设置属性:Group,Tabstop,Auto;其余按钮设置属性Tabstop,Auto。
VS2010之MFC入门到精通教程(1-55全部)
VS2010/MFC编程入门教程之目录第一部分:VS2010/MFC开发环境VS2010/MFC编程入门之前言VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)第二部分:VS2010-MFC应用程序框架VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)VS2010/MFC编程入门之四(MFC应用程序框架分析)VS2010/MFC编程入门之五(MFC消息映射机制概述)第三部分:对话框VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)VS2010/MFC编程入门之七(对话框:为对话框添加控件)VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)VS2010/MFC编程入门之九(对话框:为控件添加消息处理函数)VS2010/MFC编程入门之十(对话框:设置对话框控件的Tab顺序)VS2010/MFC编程入门之十一(对话框:模态对话框及其弹出过程)VS2010/MFC编程入门之十二(对话框:非模态对话框的创建及显示)VS2010/MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)VS2010/MFC编程入门之十四(对话框:向导对话框的创建及显示)VS2010/MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)VS2010/MFC编程入门之十六(对话框:消息对话框)VS2010/MFC编程入门之十七(对话框:文件对话框)VS2010/MFC编程入门之十八(对话框:字体对话框)VS2010/MFC编程入门之十九(对话框:颜色对话框)第四部分:常用控件VS2010/MFC编程入门之二十(常用控件:静态文本框)VS2010/MFC编程入门之二十一(常用控件:编辑框Edit Control)VS2010/MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)VS2010/MFC编程入门之二十八(常用控件:列表视图控件List Control 上)VS2010/MFC编程入门之二十九(常用控件:列表视图控件List Control 下)VS2010/MFC编程入门之三十(常用控件:树形控件Tree Control 上)VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)VS2010/MFC编程入门之三十二(常用控件:标签控件Tab Control 上)VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)第五部分:菜单、工具栏与状态栏VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)VS2010/MFC编程入门之三十六(工具栏:工具栏资源及CToolBar类)VS2010/MFC编程入门之三十七(工具栏:工具栏的创建、停靠与使用)VS2010/MFC编程入门之三十八(状态栏的使用详解)第六部分:文档、视图和框架VS2010/MFC编程入门之三十九(文档、视图和框架:概述)VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)VS2010/MFC编程入门之四十一(文档、视图和框架:分割窗口)第七部分:MFC常用类VS2010/MFC编程入门之四十二(MFC常用类:CString类)VS2010/MFC编程入门之四十三(MFC常用类:CTime类和CTimeSpan类)VS2010/MFC编程入门之四十四(MFC常用类:定时器Timer)VS2010/MFC编程入门之四十五(MFC常用类:CFile文件操作类)VS2010/MFC编程入门之四十六(MFC常用类:MFC异常处理)第八部分:字体和文本输出VS2010/MFC编程入门之四十七(字体和文本输出:CFont字体类)VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)第九部分:图形图像VS2010/MFC编程入门之四十九(图形图像:CDC类及其屏幕绘图函数)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)第十部分:Ribbon界面开发VS2010/MFC编程入门之五十二(Ribbon界面开发:创建Ribbon样式的应用程序框架)VS2010/MFC编程入门之五十三(Ribbon界面开发:为Ribbon Bar添加控件)VS2010/MFC编程入门之五十四(Ribbon界面开发:使用更多控件并为控件添加消息处理函数)VS2010/MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。
mfc button 的使用方法 -回复
mfc button 的使用方法-回复MFC(Microsoft Foundation Classes)是微软公司推出的一组C++类库,它提供了一种使用面向对象的编程方法来开发Windows应用程序。
MFC被广泛用于创建窗口、对话框、控件以及处理用户输入等任务。
在MFC中,按钮也是常见的控件之一,它可以用于触发特定的操作或执行特定的代码。
本文将详细介绍在MFC中使用按钮控件的方法。
首先,要使用按钮控件,我们需要创建一个对话框或窗口。
在MFC中,可以使用资源编辑器来设计对话框或窗口的布局。
你可以在工具箱中找到按钮控件,并将其拖放到你想要放置按钮的位置。
一旦按钮控件被放置到对话框或窗口中,你可以使用类向导来关联一个成员变量到按钮控件。
在Visual Studio的类向导中,你可以通过右键单击对话框或窗口类,选择“添加变量”的选项来打开类向导。
在类向导中,选择“控件变量”选项卡,并点击“添加变量”按钮。
接下来,会弹出一个对话框,允许你选择按钮控件的类型以及成员变量的名称。
你可以选择按钮控件的类型,例如普通按钮(Button)、单选按钮(Radio)或复选框(Checkbox)。
选择一个有意义的变量名,以便于在代码中引用该按钮控件。
点击“完成”按钮,类向导将为你自动生成一个变量。
现在,你可以在代码中使用这个按钮控件的成员变量来操作它。
你可以在成员函数中添加相关的事件处理代码,例如在按钮被点击时执行某些操作。
在MFC中,按钮的点击事件通常是通过`OnBnClicked`函数来处理的。
在你的对话框或窗口类中,你可以找到一个与按钮控件关联的`OnBnClicked`函数。
你可以在这个函数中编写相关的代码。
例如,如果你想在按钮被点击时显示一个消息框,你可以在`OnBnClicked`函数中添加以下代码:cppvoid CMyDialog::OnBnClickedButton(){MessageBox(_T("按钮被点击了!"), _T("提示"), MB_OK);}在上面的代码中,`MessageBox`函数用于显示一个消息框,第一个参数是要显示的文本内容,第二个参数是消息框的标题,第三个参数是消息框的类型(例如确定按钮、取消按钮等)。
MFC编程总结各种控件使用说明
MFC各种控件的使用说明把整数显示为时间格式的方法:Int minute=5; int sec=5;CString strTime;strTime.Format("%02d:%02d",minute,sec);GetDlgItem(IDC_STAT_DIS)->SetWindowText(strTime);定时器的使用方法:在函数BOOL CDingshiqiDlg::OnInitDialog(){SetTimer(1,1000,NULL);}添加语句SetTimer(1,1000,NULL);定时器1秒钟中断一次.然后添加消息WM_TIMER对应的消息函数:void CDingshiqiDlg::OnTimer(UINT nIDEvent){}播放系统声音的方法:在头文件添加这两句#include<mmsystem.h>#pragma comment (lib,"winmm.lib")然后调用函数: PlaySound("SystemStart",NULL,SND_ALIAS|SND_ASYNC);VC++6.0控件工具箱:2 图形控件(picture):常用于显示位图(Bitmap)和图标(Icon)3 静态文本(Static Text):MFC提供了CStatic类支持静态控件。
(1)更改该控件上字体的方法是:该控件的ID为IDC_STATIC1,IDC_STATIC2.CFont * f1;f1 = new CFont;f1 -> CreateFont( 25 , // nHeight15, // nWidth0 , // nEscapement0 , // nOrientationFW_BOLD, // nWeightFALSE , // TRUEbItalicFALSE, // bUnderline0 , // cStrikeOutDEFAULT_CHARSET, //ANSI_CHARSET nCharSetOUT_DEFAULT_PRECIS, // nOutPrecisionCLIP_DEFAULT_PRECIS, // nClipPrecisionDEFAULT_QUALITY, // nQualityDEFAULT_PITCH | FF_SWISS, // nPitchAndFamily_T( " 宋体" )); // lpszFacGetDlgItem(IDC_STATIC1)-> SetFont(f1);GetDlgItem(IDC_STATIC2)-> SetFont(f1);另一种改变字体大小的方法: 在函数外定义CStatic m_static;CFont font;m_static.SubclassDlgItem(IDC_STAT_DIS,this);LOGFONT log;GetObject(::GetStockObject(DEFAULT_GUI_FONT),sizeof(log),&log);log.lfHeight=300; //改log.lfWidth=120; //改log.lfCharSet=GB2312_CHARSET;lstrcpy(log.lfFaceName, _T("宋体"));font.CreateFontIndirect(&log);m_static.SetFont(&font);(2) 把整数显示在该控件的方法:IDC_STAT_DIS为控件IDInt minute=5,sec=5;CString strTime;strTime.Format("%02d:%02d",minute,sec);GetDlgItem(IDC_STAT_DIS)->SetWindowText(strTime);另外一种显示的方法:CStatic*pst=(CStatic *)GetDlgItem(IDC_STAT_DIS);pst->SetWindowText("00:00");4 编辑框(Edit Box):MFC提供了CEdit类支持编辑框控件。
MFC_基本控件使用
MFC_基本控件使用MFC(Microsoft Foundation Classes)是一个用于基于 Windows 的应用程序开发的C++类库。
它提供了一套基本控件,使开发人员可以轻松地创建 Windows 应用程序的用户界面。
MFC提供了多种基本控件,用于显示和输入数据、与用户交互。
以下是一些最常见的基本控件及其用法:1. Button(按钮)控件Button 控件用于触发特定的操作或执行特定的功能。
创建 Button 控件的方法如下:```CButton myButton;myButton.Create("Click Me", WS_CHILD , WS_VISIBLE ,BS_PUSHBUTTON, CRect(10, 10, 100, 30), pParentWnd, ID_MYBUTTON);```其中,"Click Me" 是按钮的显示文本,WS_CHILD , WS_VISIBLE ,BS_PUSHBUTTON 是按钮的样式。
CRect(10, 10, 100, 30) 是按钮的大小和位置,pParentWnd 是按钮的父窗口,ID_MYBUTTON 是按钮的标识符。
Edit Control 控件用于接收用户输入的文本数据。
创建 Edit Control 控件的方法如下:```CEdit myEdit;myEdit.Create(WS_CHILD , WS_VISIBLE , WS_BORDER, CRect(10, 50, 300, 70), pParentWnd, ID_MYEDIT);```3. List Box(列表框)控件List Box 控件用于显示一个垂直列表,可以包含多个项。
创建 List Box 控件的方法如下:```CListBox myList;myList.Create(WS_CHILD , WS_VISIBLE , WS_BORDER ,LBS_NOTIFY, CRect(10, 90, 200, 200), pParentWnd, ID_MYLIST);```其中,WS_CHILD , WS_VISIBLE , WS_BORDER , LBS_NOTIFY 是列表框的样式。
MFC各种控件属性介绍
MFC各种控件属性介绍MFC(Microsoft Foundation Class)是Microsoft提供的一套C++类库,用于简化Windows应用程序的开发过程。
MFC中有许多控件可以用于构建用户界面,每个控件都有自己的属性。
接下来将介绍一些常用的MFC控件及其属性。
1. Button按钮控件:3. List Box列表框控件:List Box控件用于显示一列选项供用户选择。
常用属性包括:列表框内容(List Box Content)、选择模式(Selection Mode)、默认选择项(Default Selection)等。
5. Static静态文本控件:Static控件用于显示一些静态文本信息。
常用属性包括:文本内容(Static Text)、字体属性(Font Attributes)、文本颜色(Text Color)等。
6. Check Box复选框控件:Check Box控件用于显示一个选项,用户可以选择或取消选择该选项。
常用属性包括:选项文本(Check Box Text)、选项状态(Check Box State)、选项位置(Check Box Position)等。
7. Radio Button单选按钮控件:Radio Button控件用于显示一组互斥的选项,用户只能选择其中的一个选项。
常用属性包括:选项文本(Radio Button Text)、选项状态(Radio Button State)、选项位置(Radio Button Position)等。
8. Slider滑块控件:Slider控件用于在一个范围内选择一个数值。
常用属性包括:数值范围(Value Range)、默认数值(Default Value)、滑块大小(Slider Size)等。
9. Progress Bar进度条控件:Progress Bar控件用于显示一个操作的进度。
常用属性包括:进度范围(Progress Range)、当前进度(Current Progress)、进度栏宽度(Progress Bar Width)等。
vs开发单选控件CRadio的使用总结
二、Radio button控件分组
每组的第一个单选按钮设置属性Group设置为true,从第1个Group属性为true的Radio button控件到下一个group属性为true的单选按 钮的前一个单选按钮为一组(按照Tab顺序)。每一组可以设置一个成员变量与之关联。
三、用CWnd成员函数同时设置组和默认选中按钮
四、获取单选按钮状态
调用类CWnd的成员函数GetCheckedRadioButton可以获取Radio button的状态 int GetCheckedRadioButton( int nIDFirstButton, int nIDLastButton ) 第一个参数nIDFirstButton是同一组中的第一个单选钮控件的ID 第二个参数nIDLastButton是同一组中最后一个单选钮控件的ID 成员函数GetCheckedRadioButton返回指定组中第一个所选中的单选钮(在正常情况下仅应当有一个单钮被选中)的ID,如果没有按钮被 选中,则返回0。这里需要注意的是,成员函数GetCheckedRadioButton被没有要求两个参数nIDFirstButton和nIDLastButton所指定的 控件一定位于同一组中。 若干个单选钮是否属于同一组是以其Tab顺序来排定的,而GetCheckedRadioButton函数是以ID顺序来检查按钮的选定状态的。因此, 如果传递给函数GetCheckedRadioButton的第一个参数的值大于第二个参数的值时,其返回值总是为0,而事实上,由这两个参数指定 的单选钮的TAB顺序可能恰恰相反。因此,一般情况下我们应该尽量保证同一组单选钮的资源ID是连续递增的。通常这些资源ID是在头文 件Resource.h中定义的。如果你同一组的单选钮不是一次创建的,那么它们的资源ID可能不是连续递增的,甚至可能是相反的。这时我们 可以手动的修改资源头文件中的宏定义,以保证如GetCheckedRadioButton之类的成员函数得到正确的结果。 同时,这也说明一点,即使用GetCheck一个一个控件的检查各单选钮的选中状态要安全得多。 int i_check = ((CButton *)GetDlgItem(IDC_RADIO1))->GetCheck();//获取IDC_RADIO1控件选择状态 返回值(i_check的值): 0 按钮处于未选中状态 1 按钮处于选中状态 2 按钮状态不定(仅当按钮风格为BS_3STATE或BS_AUTO3STATE时)如果按钮是其它风格,则返回0。
VS2010MFC编程入门之二十三(常用控件:按钮控件的编程实例)
VS2010MFC编程入门之二十三(常用控件:按钮控件的编程实例)上一节VS2010/MFC编程入门教程中鸡啄米讲了按钮控件Button、Radio Button和Check Box的基本用法,本节就继续讲按钮控件的内容,通过一个实例让大家更清楚按钮控件在实际的软件开发中如何使用。
因为Button 控件在前面的例子中涉及到了,比较简单,本文就不作深入分析了,而是重点讲解单选按钮Radio Button、复选框Check Box的使用。
按钮控件实例的功能首先介绍此实例实现的功能。
此实例用来根据网站类型选择网站,并将选择的网站的名称显示到编辑框中。
网站类型有“门户”、“论坛”和“博客”三种,为单选按钮。
网站有六个:鸡啄米、新浪、天涯论坛、韩寒博客、网易和凤凰网论坛,均为复选框。
当选中某种网站类型即点了某个单选按钮时,其对应的网站的复选框就激活,其他则禁用,不允许选择,且为非选中状态。
例如,如果选中了“门户”单选按钮,则“新浪”、“网易”复选框激活,允许用户选择,而其他复选框则禁用。
按钮控件实例的实现鸡啄米下面为大家详细阐述此实例的编写步骤。
1. 创建一个基于对话框的MFC工程,名称设为“Example23”。
2. 在自动生成的主对话框IDD_EXAMPLE23_DIALOG的模板中,删除“TODO: Place dialog controls here.”静态文本框,添加两个Group Box,属性Caption分别改为“网站类型”、“网站”。
3. 在Group Box“网站类型”中加入三个Radio Button,Caption分别设为“门户”、“论坛”和“博客”,ID分别设为IDC_PORTAL_RADIO、IDC_FORUM_RADIO和IDC_BLOG_RADIO。
4. 在Group Box“网站”中加入六个Check Box,Caption分别设为“鸡啄米”、“新浪”、“天涯论坛”、“韩寒博客”、“网易”和“凤凰网论坛”,ID分别设为IDC_CHECK1、IDC_CHECK2、IDC_CHECK3、IDC_CHECK4、IDC_CHECK5和IDC_CHECK6。
MFC常用控件使用
MFC常用控件使用MFC(Microsoft Foundation Classes)是一个用于Windows平台的C++类库,用于开发基于Windows的图形用户界面应用程序。
MFC提供了许多常用的控件,开发人员可以使用这些控件来构建各种类型的Windows应用程序。
下面是一些常用的MFC控件和它们的使用方法:1. Button控件:Button控件用于创建按钮。
创建Button控件的方法是通过调用CButton类的Create函数,指定按钮的风格、位置和大小等参数。
之后,可以使用CButton类的成员函数来设置按钮的文本、图片和事件处理程序等。
3. List Box控件:List Box控件用于创建列表框,用于显示列表项。
创建List Box控件的方法是通过调用CListBox类的Create函数,指定列表框的风格、位置和大小等参数。
之后,可以使用CListBox类的成员函数来添加、删除和获取列表项等。
5. Static控件:Static控件用于显示静态文本。
创建Static控件的方法是通过调用CStatic类的Create函数,指定静态文本的风格、位置和大小等参数。
之后,可以使用CStatic类的成员函数来设置静态文本的内容、字体和颜色等。
6. Slider控件:Slider控件用于创建滑动条。
创建Slider控件的方法是通过调用CSliderCtrl类的Create函数,指定滑动条的风格、位置和大小等参数。
之后,可以使用CSliderCtrl类的成员函数来设置滑动条的范围、当前位置和事件处理程序等。
7. Progress控件:Progress控件用于显示进度条。
创建Progress 控件的方法是通过调用CProgressCtrl类的Create函数,指定进度条的风格、位置和大小等参数。
之后,可以使用CProgressCtrl类的成员函数来设置进度条的范围、当前位置和事件处理程序等。
8. Tree Control控件:Tree Control控件用于显示树形结构。
轻松学VisualC之常用控件介绍
单选框按钮例子
下面举个单选框的小例子,实现单击“查询” 按钮弹出用户所选择的职业。
5.4 复选框按钮
复选框按钮(Check Box)也是Windows提 供的又一种很常见的按钮。但是使用的时候不 需要像单选按钮那样进行分组。可以使用复选 按钮,从一组选项中选择一个选项或多个选项, 各个选项之间的选中状态互不相关。本节也只 介绍复选框最常用的操作,其它一些属性或控 件类型变量的使用可根据前几节介绍的方法自 己尝试或查看相应的帮助文档。
第5章 常用控件介绍
控件是Windows应用程序的图形界面的重要组成 部分,用户可以通过控件完成与应用程序的交互。 控件其实在MFC中是对数据和方法的封装,当然 控件就有自己的属性和方法。在MFC中,所有的 控件都是由CWnd类派生来的,所以控件可以作 为对话框的子窗口而创建。本章以对话框程序为 基础介绍一些基本和常用的控件,学习掌握 Windows控件一般的使用方法和步骤。
5.3 单选按钮
使用单选按钮(Radio Button)从一组选 项中选择唯一一个选项,当我们在填写表格 时经常会用到。例如,在一组职业中选择你 的职业等。本节讲解单选按钮最常用的操作 及一些特点。
单选按钮的特点及其应用
单选按钮(Radio Button)不同于前面讲的 那些控件,它有自己一套独特的操作方式。 单选按钮通常以组的方式呈现,在组中选择 符合要求的那个选项。
输入
信息是否已存在
N
插入
选择
Y
调整顺序
显示
5.7 列表视图控件
在5.5节讲过列表框,列表视图可以当做是 功能增强型的列表框。列表视图控件可以很 好的用来显示项目元素,在编写数据库软件 时也经常会用到。在Windows系统中文件 夹目录也是以列表视图呈现。
MFC控件使用说明
MFC控件使用说明MFC(Microsoft Foundation Class)是一套面向C++开发的框架,用于快速开发图形用户界面(GUI)应用程序。
MFC提供了一套丰富的控件(Controls),用于实现各种功能和交互效果。
本文将介绍一些常用的MFC控件的使用说明。
1. Button 控件:Button控件用于显示一个按钮,用户点击按钮时会触发相应的事件处理函数。
使用方式如下:-在对话框资源中添加一个按钮控件,并为其设置ID号。
- 在对话框类的变量中声明按钮控件的成员变量,使用CButton类型。
- 在OnInitDialog函数中使用GetDlgItem函数获取按钮控件的指针,并使用它调用相应的函数,如SetWindowText设置按钮的文本内容。
3. List Box 控件:List Box控件用于显示一个列表,用户可以选择其中的项。
使用方式如下:-在对话框资源中添加一个列表框控件,并为其设置ID号。
- 在对话框类的变量中声明列表框控件的成员变量,使用CListBox类型。
- 在OnInitDialog函数中使用GetDlgItem函数获取列表框控件的指针,并使用它调用相应的函数,如AddString添加项,SetCurSel设置选中项。
-在对话框资源中添加一个组合框控件,并为其设置ID号。
- 在OnInitDialog函数中使用GetDlgItem函数获取组合框控件的指针,并使用它调用相应的函数,如AddString添加项,SetCurSel设置选中项。
5. Check Box 控件:Check Box控件用于显示一个复选框,用户可以选中或取消选中。
-在对话框资源中添加一个复选框控件,并为其设置ID号。
- 在对话框类的变量中声明复选框控件的成员变量,使用CButton类型。
- 在OnInitDialog函数中使用GetDlgItem函数获取复选框控件的指针,并使用它调用相应的函数,如SetCheck设置选中状态。
MFC各种控件属性介绍
MFC各种控件属性介绍MFC(Microsoft Foundation Classes)是一组用于开发Windows应用程序的C++类库。
它提供了许多用于创建GUI(Graphical User Interface)界面的控件,这些控件可以用于显示和操作数据。
下面是对一些常见的MFC控件属性的介绍:1. Button(按钮)控件:Button控件用于触发事件或执行一些操作。
它有几个常用的属性,如按钮文本(Caption),按钮样式(Style),按钮位置(Position)等。
样式属性可以设置按钮的外观(如3D效果、边框等),并可以选择不同的按钮类型(如radio、checkbox等)。
3. List Box(列表框)控件:List Box控件用于显示一系列列表项。
它有属性用于设置列表框的大小(Size),位置(Position),以及显示模式(SelectionMode)等。
其他属性还包括排序(Sort),可见项数(VisibleItems)以及是否多选(Multiselect)等。
5. Check Box(复选框)控件:Check Box控件用于允许用户选择一个或多个选项。
它有属性用于设置复选框的大小(Size),位置(Position),选择状态(Checked),以及显示文字(Caption)等。
6. Radio Button(单选按钮)控件:Radio Button控件用于只允许用户从一组选项中选择一个。
它有属性用于设置单选按钮的大小(Size),位置(Position),选择状态(Checked),以及显示文字(Caption)等。
一组互斥的单选按钮应该放在同一个命名容器内。
7. Slider(滑动条)控件:Slider控件用于接受用户通过滑动操作选择一个数值。
它有属性用于设置滑动条的大小(Size),位置(Position),范围(Range),以及当前值(Value)等。
其他属性还包括方向(Orientation)和是否显示刻度线(TickMarks)等。
MFC单选按钮
MFC单选按钮2010-12-20 14:27:53| 分类:Windows | 标签:|字号大中小订阅先为对话框加上2个radio button,分别是Radio1和Radio2。
问题1:如何让Radio1或者Radio2默认选上?如何知道哪个被选上了?关键是选上,“默认”只要放在OnInitDialog()即可。
三种方法可以让它选上,第一种:((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);//选上((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(FALSE);//不选上((CButton *)GetDlgItem(IDC_RADIO1))->GetCheck();返回1表示选上,0表示没选上第二种:关联一个congtrol型变量(子类化),好ctrl+W(即打开classwizard),点开Member Variables,咦?怎么没有IDC_RADIO1这个ID?原来是没有分组。
因为radio button通常都是成组使用的,在一组里面是互斥的。
取消,回到对话框资源面板,右键Radio1查看属性把Group选上,那么,Radio1和Radio2就是一组了(怎么知道他们是一组的?后面说)。
此时,就可以为Radio1增加一congtrol型变量m_ctrlRadio1了。
如下:m_ctrlRadio1.SetCheck(TRUE);同样可以使用GetCheck()获取状态。
第三种:关联一个int型变量(同样需要先分组)m_nRadio1,打开对话框构造函数,你会发现有:m_nRadio1 = -1;m_nRadio1别赋值-1表示哪个都没有选上。
如果你把-1改成0,就会发现Radio1默认被选上了,依此类推,m_nRadio1的值为1 就是第二个被选上了(这里同样有问题,哪个是第一个?哪个是第二个?)。
C#窗体控件-单选按钮控件RadioButton
C#窗体控件-单选按钮控件RadioButton单选控件(RadioButton)显⽰为⼀个标签,左边是⼀个原点,该原点可以是选中或未选中。
在要给⽤户提供⼏个互斥选项时,就可以使⽤单选按钮。
例如,询问⽤户的性别。
把单选按钮组合在⼀起,给它们创建⼀个逻辑单元,此时必须使⽤GroupBox控件或其他容器。
⾸先在窗体上拖放⼀个组框,再把需要的RadioButton按钮放在组框的边界之内,RadioButton按钮会⾃动改变⾃⼰的状态,以反映组框中惟⼀被选中的选项。
如果不把它们放在组框中,则在任意时刻,窗体上只有⼀个RadioButton被选中。
单选按钮控件的主要属性:Checked:指⽰单选按钮是否已选中。
Text:单选按钮显⽰的⽂本。
AutoCheck:单选按钮在选中时⾃动改变状态,默认为true。
单选按钮控件的主要事件:Click:单击控件时发⽣。
CheckedChanged:当Checked属性值更改时触发。
RadioButton控件的属性名称描述AppearanceRadioButton可以显⽰为⼀个圆形选中标签,放在左边、中间或右边,或者显⽰为标准按钮。
当它显⽰为按钮时,控件被选中时显⽰为按下状态,否则显⽰为弹起状态AutoCheck如果这个属性为true,⽤户单击单选按钮时,会显⽰⼀个选中标记。
如果该属性为false,就必须在Click事件处理程序的代码中⼿⼯检查单选按钮CheckAlign使⽤这个属性,可以改变单选按钮的复选框的对齐形式,默认是ContentAlignment. MiddleLeftChecked表⽰控件的状态。
如果控件有⼀个选中标记,它就是true,否则为falseRadioButton控件的事件名称描述CheckChanged当RadioButton的选中选项发⽣改变时,引发这个事件Click每次单击RadioButton 时,都会引发该事件。
这与CheckChanged事件是不同的,因为连续单击RadioButton 两次或多次只改变Checked属性⼀次,且只改变以前未选中的控件的Checked属性。
MFC常用控件
MFC常⽤控件按钮控件按钮控件包括命令按钮(Button)、单选按钮(Radio Button)和复选框(Check Box)等。
按钮控件会向⽗窗⼝发送通知消息,最常⽤的通知消息莫过于BN_CLICKED和BN_DOUBLECLICKED了。
⽤户在按钮上单击⿏标时会向⽗窗⼝发送BN_CLICKED消息,双击⿏标时发送BN_DOUBLECLICKED消息。
命令按钮(Button)在⼀个对话框中,Button可以定义⼀个默认按钮,这只要选中按钮属性中的“Default”选项。
如果在对话框活动的时候按下了Enter键,则等同于单击了默认按钮。
void CWindowDlg::OnBnClickedBtnTest1(){MessageBox(L"提⽰1");}void CWindowDlg::OnBnClickedBtnTest2(){MessageBox(L"默认按钮属性设置为true");}//测试2按钮的默认属性设置为true,当在对话框中点击enter键时,弹出对话框:默认按钮属性设置为true动态⽣成⼀个Button控件的⽅式如下:头⽂件中定义CButton对象CButton m_btnTest1;执⾏CButton::Create 创建⼀个CButton对象:BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );int CWindowDlg::OnCreate(LPCREATESTRUCT lpCreateStruct){m_btnTest1.Create(L"哈哈哈", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(20, 100, 100, 160), this, IDC_BTN_HELLO1);//pParentWnd指⽰拥有按钮的⽗窗⼝(this为当前对话框对象),不能为NULL;//nID指定与按钮关联的ID号,⽤于按钮控件的事件处理( IDC_BTN_HELLO1)}stdadx.h中定义IDC_BTN_HELLO1宏#define IDC_BTN_HELLO1 1000运⾏后对话框显⽰的Button按钮结果如下:如果想让按钮有其他动作,⽐如当⿏标移动到按钮上时,按钮⽂本信息会变化。
MFC RadioButton用法详解
MFC RadioButton用法详解基础介绍:radio button通常都是成组使用的,在一组里面是互斥的。
分组的原则是:1、首先将RadioButton控件定好Tab顺序,具体方法:工具栏“格式”—>“Tab键顺序”选项选中,然后按照预定的顺序依次点击对话框上面的RadioButton按钮,Tab键顺序设定完成。
2、按照上面的Tab键顺序进行分组,然后设定每组第一个RadioButton的Group属性为TRUE,分组完成,即从当前设置Group属性为TRUE的RadioButton开始直到碰到下一个选上Group属性的RadioButton的前一个RadioButton为一个组。
3、为单选控件定义Control变量或Value变量,每组只能定义一个,通过设定值来确定哪一个RadioButton被选中,其中-1表示该组均不被选中,0表示该组第一个RadioButton被选中,1表示第二个……)。
环境:Visual Studio2010以对话框为例,工程名称为:RadioButtonInstance。
此工程中,共创建四组RadioButton,记着设定Tab键顺序以及为每组第一个RadioButton设置Group属性。
初始化对话框为下图:为该工程中的RadioButton设定下面若干变量:(为单选控件定义Control变量或Value变量,每组只能定义一个)BOOL m_Radio1;//对应于组 1 1BOOL m_Radio3; //对应于组 2 1BOOL m_Radio7; //对应于组 3 1BOOL m_Radio9; //对应于组 4 1CButton m_RBtGroup1; //对应于组 1 1CButton m_RBtGroup2; //对应于组 2 1CButton m_RBtGroup3; //对应于组 3 1CButton m_RBtGroup4; //对应于组 4 1添加变量方法一:利用类向导方法添加变量(略)方法二:直接编程如下RadioButtonInstanceDlg.h文件中:代码部分如下class CRadioButtonInstanceDlg : public CDialogEx{// 构造public:CRadioButtonInstanceDlg(CWnd* pParent = NULL); // 标准构造函数// 对话框数据enum { IDD = IDD_RADIOBUTTONINSTANCE_DIALOG };protected:virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持// 实现protected:HICON m_hIcon;// 生成的消息映射函数virtual BOOL OnInitDialog();afx_msg void OnSysCommand(UINT nID, LPARAM lParam);afx_msg void OnPaint();afx_msg HCURSOR OnQueryDragIcon();DECLARE_MESSAGE_MAP()public:BOOL m_Radio1;BOOL m_Radio3;BOOL m_Radio7;BOOL m_Radio9;CButton m_RBtGroup1;CButton m_RBtGroup2;CButton m_RBtGroup3;CButton m_RBtGroup4;};RadioButtonInstanceDlg.cpp文件中:void CRadioButtonInstanceDlg::DoDataExchange(CDataExchange* pDX){CDialogEx::DoDataExchange(pDX);DDX_Radio(pDX, IDC_RADIO1, m_Radio1);DDX_Radio(pDX, IDC_RADIO3, m_Radio3);DDX_Radio(pDX, IDC_RADIO7, m_Radio7);DDX_Radio(pDX, IDC_RADIO9, m_Radio9);DDX_Control(pDX, IDC_RADIO1, m_RBtGroup1);DDX_Control(pDX, IDC_RADIO3, m_RBtGroup2);DDX_Control(pDX, IDC_RADIO7, m_RBtGroup3);DDX_Control(pDX, IDC_RADIO9, m_RBtGroup4);}问题一:如何更改RadioButton默认值???方法1在定义控件变量时,默认变量初值为-1,表示此组的任何RadioButton均不被选中,如果需要改变初始默认按钮的设置情况,只需要在对话框的构造函数中把变量初值设为相应的变量值即可。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VS2010MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)
按钮控件简介按钮控件包括命令按钮(Button)、单选按钮(Radio Button)和复选框(Check Box)等。
命
令按钮就是我们前面多次提到的狭义的按钮控件,用来响应用户的鼠标单击操作,进行相应的处理,它可以显示文本也可以嵌入位图。
单选按钮使用时,一般是多个组成一组,组中每个单选按钮的选中状态具有互斥关系,即同组的单选按钮只能有一个被选中。
命令按钮是我们最熟悉也是
最常用的一种按钮控件,而单选按钮和复选框都是一种比较特殊的按钮控件。
单选按钮有选中和未选中两种状态,为选中状态时单选按钮中心会出现一个蓝点,以标识选中状态。
一般的复选框也是有选中和未选中两种状态,选中时复选框内会增加一个“√”,而三态复选框(设置了BS_3STATE风格)有选中、未选中和不确定三种状态,不确定状态时复选框内出现一个灰色“√”。
按钮控件会向父窗口发送通知消息,最常用的通知消息莫过于BN_CLICKED和
BN_DOUBLECLICKED了。
用户在按钮上单击鼠标时会向
父窗口发送BN_CLICKED消息,双击鼠标时发送
BN_DOUBLECLICKED消息。
按钮控件的创建
MFC提供了CButton类封装按钮控件的所有操作。
之前的教程中,我们是在对话框模板上直接添加的按钮控件资源,但某些特殊情况下需要我们动态创建按钮控件,即通过CButton类的成员函数Create来创建按钮。
下面是Create 函数的原型:virtual BOOL Create(
LPCTSTR lpszCaption,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID
); 参数说明:lpszCaption:指定按钮控件显示的文本。
dwStyle:指定按钮控件的风格,可以设置为以下按钮风格的任意组合。
BS_AUTOCHECKBOX :同BS_CHECKBOX,不过单击鼠标时按钮会自动反转
BS_AUTORADIOBUTTON:同
BS_RADIOBUTTON,不过单击鼠标时按钮会自动反转BS_AUTO3STATE :同BS_3STATE,不过单击按钮时会改变状态
BS_CHECKBOX:指定在矩形按钮右侧带有标题的选择框
BS_DEFPUSHBUTTON:指定默认的命令按钮,这种按钮的周围有一个黑框,用户可以按回车键来快速选择该
按钮
BS_GROUPBOX:指定一个组框
BS_LEFTTEXT:使控件的标题显示在按钮的左边
BS_OWNERDRAW:指定一个自绘式按钮
BS_PUSHBUTTON:指定一个命令按钮
BS_RADIOBUTTON:指定一个单选按钮,在圆按
钮的右边显示正文
BS_3STATE:同BS_CHECKBOX,不过控件有3 种状态—选择、未选择和变灰当然,除了以上列出的
风格,一般还会为按钮设置WS_CHILD、WS_VISIBLE和WS_TABSTOP等风格,WS_TABSTOP风格使按钮控件具有tab停止属性,即按tab键切换焦点控件时能够将焦点停在按钮控件上。
创建一组单选按钮时,第一个按钮的风格应设置为
WS_CHILD|WS_VISIBLE|WS_TABSTOP|WS_GROUP|BS _AUTORADIOBUTTON,其他单选按钮的风格应为
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON,不包含WS_TABSTOP和WS_GROUP。
在对话框模板上直接添加按钮控件时,它的属性中包含了上述风格,例如,复选框的Tri_state属性实际上代表的就是BS_3STATE风格。
剩下的三个参数与静态文本框的Create函数中的相应参数
类似,大家可以参考前面静态文本框的讲解,也可以查阅
MSDN。
CButton类的主要成员函数下面是CButton类的一些主要的成员函数,至于其他的函数大家可以在MSDN中查看。
HBITMAP
SetBitmap(HBITMAP hBitmap); 设置要在按钮中显示的位图。
参数hBitmap为位图的句柄。
返回值为按钮原来位图的句柄。
HBITMAP GetBitmap( ) const;
获取之前由SetBitmap函数设置的按钮位图的句柄。
void SetButtonStyle(UINT nStyle,BOOL bRedraw = TRUE); 设置按钮的风格。
参数nStyle指定按钮的风格,bRedraw
指定按钮是否重绘,为TRUE则重绘,否则不重绘,默认为重绘。
UINT GetButtonStyle( ) const; 获取按钮控件的风格。
void SetCheck(int nCheck);
设置按钮的选择状态。
参数nCheck为0表示未选中状态,1表示选中状态,2表示不确定状态(仅用于复选框)。
int GetCheck( ) const; 获取按钮的选择状态。
返回值的意义同SetCheck函数的nCheck参数。
HCURSOR SetCursor(HCURSOR hCursor); 设置
要显示到按钮上的光标图。
参数hCursor指定了光标的句柄。
返回值为按钮原来光标的句柄。
HCURSOR GetCursor( ); 获取之前由SetCursor设置的光标的句柄。
HICON SetIcon(HICON hIcon); 设置要在按钮上显示的图标。
参数hIcon指定了图标的句柄。
返
回值为按钮原来图标的句柄。
HICON GetIcon( ) const; 获取之前由SetIcon设置的图标的句柄。
void SetState(BOOL bHighlight); 设置按钮的高亮状态。
参数bHighlight指定按钮是否高亮显示,非0则高亮显示,否则取消高亮显示状态。
UINT GetState( ) const; 获取按钮控件的选择状态、高亮状态和焦点状态。
我们可以通过将返回值与各个掩码相与来获得各种状态值,掩码与对应的相与结果说明如下:掩码0x0003:用来获取单选按钮或复选框的状态。
相与结果为0表示未选中,1表示被选中,2表示不确定状态(仅用于复选框)。
掩码0x0004:用来判断按钮是否是高亮显示。
相与结果为非0值表示按钮是高亮显示的。
当单击按钮并按住鼠标左键时,按钮会呈高亮显示。
掩码0x0008:相与结果为非零值表示按钮拥有输入焦点。
下面再列出几个继承自CWnd类的成员函数,通过它们获取或设置按钮控件的状态非常方便,只需要知道按钮的ID。
void CheckDlgButton(int
nIDButton,UINT nCheck); 用来设置按钮的选择状态。
参数nIDButton指定了按钮的ID。
nCheck的值为0表示按钮未被选择,为1表示按钮被选择,为2表示按钮处于不确定状态(仅用于复选框)。
UINT IsDlgButtonChecked(int nIDButton) const; 返回复选
框或单选按钮的选择状态。
返回值为0表示按钮未被选择,为1表示按钮被选择,为2表示按钮处于不确定状态(仅用于复选框)。
void CheckRadioButton(int nIDFirstButton,int nIDLastButton,int nIDCheckButton);
用来选择组中的一个单选按钮。
参数nIDFirstButton指定了组中第一个按钮的ID,nIDLastButton指定了组中最后一个按钮的ID,nIDCheckButton指定了要选择的按钮的ID。
int GetCheckedRadioButton(int nIDFirstButton, int nIDLastButton); 用来获得一组单选按钮中被选中按钮的ID。
参数nIDFirstButton 说明了组中第一个按钮的ID,nIDLastButton 说明了组中最后一个按钮的ID。
另外,CWnd类的成员函数GetWindowText()、SetWindowText()等也可以用来获取或设置按钮中显示的文本。