MFC|Toolbox内控件简单介绍

news2024/9/22 11:39:24

参考:
MFC控件工具箱 (https://blog.csdn.net/Hubz131/article/details/77684910)
对应工具的超链接是本人搜到认为较易理解的单个控件介绍。
在这里插入图片描述

  • Pointer:就是普通的鼠标,默认状态
  • Button:按钮,用来接收用户的命令,应用程序在接收到用户命令后,通常需要进行一些后台工作。按钮可以响应单击或双击动作,在按钮接收到鼠标动作后,向其父窗口发送相应的控件通知,用户可以对这些控件通知进行消息映射,从而进行相应的处理。在一个对话框中,可以定义一个默认按钮,这只要选中按钮属性中的“Default”选项。如果在对话框活动的时候按下了Enter键,则等同于单击了默认按钮。MFC提供了CButton类支持按钮控件。
    在这里插入图片描述
  • Check Box:复选框,用来显示某种可能的选择,该项选择是独立的,用户可以选中或取消该选项。在选项被选中的时候核选标记出现,选项被取消时核选标记消失。MFC中由CButton类对核选框进行支持,用户可以通过SetCheck()函和GetCheck()函数设置或获取核选框当前的状态。
    在这里插入图片描述
  • Edit Control:编辑框,用来接收用户输入的字符串。通过选择编辑框的选项,编辑框可以接收字符串、数字、密码等;编辑框还可以设置成接收多行字符串的模式;可以自动进行大小写转换。编辑框可能向其父窗口发送多种控件通知,如果用户需要,可以对这些控件通知进行处理。MFC提供了CEdit类支持编辑框控件。
    在这里插入图片描述
  • Combo Box:组合框,列表框和编辑框的组合,用户除了可以在列表中对已经存在的选项进行选择外,还可以输入新的选。MFC提供了CComboBox类对组合框控件进行支持。
    在这里插入图片描述
  • List Box: 用来选择一系列的可能选择,用户通过滚动条可以在这些选择中浏览。在列表框中,可以进行单项选择,也可以进行多项选择,这取决于用户在控件属性对话框中的设置。MFC提供了CListBox类对列表框控件进行支持。
    在这里插入图片描述
  • Group Box:组合框,用来包围具有逻辑关系的一组控件,在这些控件的周围加上边界和标题。需注意的是,组成框仅仅是在视觉效果上对控件进行“成组”,真正的“成组”工作还需要另外一些工作。

在这里插入图片描述

  • Radio Button:单选按钮,用来选择某种可能的选择,与复选框不同,该选项不是独立的。一般是几个单选按钮组成一组,同组中的单选按钮可以有也只能有一个按钮被选中。MFC同样使用CButton类对单选按钮控件进行支持,SetCheck()函数和GetCheck()函数对单选按钮也是适用的。
    在这里插入图片描述
  • Static Text:静态文本,用来在指定的位置显示特定的字符串,一般用来标识附近另一个控件的内容。显示在静态文本控件中的字符串一般不再改变,但是在需要的时候,也可以通过调用相应的函数来进行设置。MFC提供了CStatic类支持静态控件。
    在这里插入图片描述
  • Picture Control:图形控件,常用于显示位图(Bitmap)和图标(Icon)。
    在这里插入图片描述
  • Horizontal Scroll Bar & Vertical Scroll Bar:滚动条,这包括水平滚动条(Horizontal Scroll Bar)和垂直滚动条(Vertical Scroll Bar),除了在视觉效果上的方向不同外,水平滚动条在被滚动时发生WM_HSCROLL消息,而垂直滚动条在被滚动时发送WM_VSCROLL消息。MFC提供了CScrollBar进行支持。
    在这里插入图片描述
  • Slider Control:滑块控件,通常用来在程序中接受一系列离散的数值。用户可以设置滑块控件的取值范围,并可以为控件加上刻度标记以显示特定位置的含义。MFC提供了CSliderCtrl类进行支持。
    在这里插入图片描述
  • Spin Control:微调按钮,包括一对紧靠在一起的上下箭头,使用微调按钮可以增大或者缩小某个特定的数值。微调按钮往往都需要一个“伙伴”控件,这通常都是一个编辑框。当微调按钮的向上箭头被单击时,编辑框中的数字就增大;反之则减小。MFC提供了CPinButtonCtrl类进行支持。
    在这里插入图片描述
  • Progress Control:进度条,在进行一项需要占有较长时间的操作时来反应当前的进度。当操作的进度不断前进时,进度条就用特色颜色填充进度条框。用户可以设定进度条的范围和当前位置。MFC提供了CProgressCtrl类进行支持。
    在这里插入图片描述
  • Hot Key:热键控制,热键控件看起来就像一个编辑框,但是在热键控件中能够立刻反应用户刚刚按下的键组合,这在设置程序的热键时特别有用。热键控件只是在“视觉”上显示了按键组合,设置热键的工作还需要用户添加代码完成。MFC提供了CHotKey类进行支持。
    在这里插入图片描述
  • List Control:列表控制,按一定的排列顺序显示一系列带图标的字符串,列表控件提供了四种显示模式:大图标、小图标、列表和详细信息。用户可以向列表控件中添加新的项,也可以控制列表控件的显示模式。MFC提供了CListCtrl类进行支持。
    在这里插入图片描述
  • Tree Control:树形控件,用来显示一系列项目的层次关系,最典型的例子是显示磁盘上的文件与文件夹。如果有子项目的话,单击树形控件中的项目可以展开或者收缩其子项目。MFC提供了CTreeCtrl类进行支持。
    在这里插入图片描述
  • Tab Control:属性表控件,用来包含大量的控件,可以满足用户显示或者获取大量数据的要求。每个属性表又分为好几个属性页,这些属性页由各自的标签进行区分,这些属性页中都可以包容其他控件。在显示属性表的时候,一次只能够显示一个属性页的全部内容,同时显示其他属性页的标签,用户通过单击标签打开相应的属性页。MFC提供了CTabCtrl类进行支持。
    在这里插入图片描述
  • Animation Control:动画控件,用来播放一段AVI格式的视频剪辑。用户可以控制视频剪辑的播放、停止和定位,但也仅限于这些功能。动画控件设置不能播放音频剪辑,如果用户需要更高层次的视频或者音频的支持,请选用MCIWnd控件。MFC提供了 CAnimateCtrl类对动画控件进行支持。
    在这里插入图片描述
  • Rich Edit 2.0 Control:高级编辑框,编辑控件功能的扩展。在高级编辑框中,除了简单的输入和编辑字符串外,用户还可以为字符或段落指定特定的格式,用户甚至还可以向高级编辑框中插入OLE项。高级编辑框基本上实现了一个带格式的文本编辑器功能,而只需要用户添加少量的接口。MFC提供了CRichEditCtrl类进行支持。
    在这里插入图片描述
  • Date Time Picker:日期/时间选择器,向用户提供了一种直观的选择日期和时间的方法、日期/时间选择器在外观上类似于一个组合框,但是当用户单击下拉箭头时就会展开一个日历控件供用户选择,而一旦用户做出了选择,日期/时间选择器会自动显示新的日期/时间。MFC提供了CDateTimeCtrl类进行支持。
    在这里插入图片描述
  • Moth Calendar Control:日历控件,看似与真正的日历类似,操作也类似,直观的为用户提供了观察和显示当前日期的途径。MFC提供了CMonthCalCtrl类进行支持。
    在这里插入图片描述
  • IP Address Control:IP地址控件,IP地址控件用来输入和编辑IP地址。该控件外观类似于一个编辑框,但是可以自动对输入的字符按3个一组进行区分和加间隔圆点。IP地址控件为开发支持Internet技术的程序提供了方便。MFC提供了CIPAddressCtrl类进行支持。
    在这里插入图片描述
  • Extended Combo Box:扩展组合框,在普通组合框的基础上还支持图像列表。即,可以在组合框中显示特定的图标表示相应的选择,而不仅仅是显示文本。MFC提供了CComboBoxEx类进行支持。刚创建出来的样式和普通comboBox一样。

在这里插入图片描述

  • Custom Control:自定义控件,可以快速建立可定制化的控件;可以应付动态交换,比如一个custom contorl,在某种状态下,是listctrl,在某种状态下是Treectrl;也可以把封装好的dll,定制到custom contorl,也可以有源码的使用。
    在这里插入图片描述
  • SysLink Control:超链接,实现超链接功能。
    在这里插入图片描述
  • Split Button Control:具有下拉菜单的按钮,实际上还有点像Combo Box不过它的实现是button加menu所以它的消息处理可以分成button的处理和menu的处理。
    在这里插入图片描述
  • Network Address Control:网络地址,输入IP地址或host name,继承自类CEdit,输入的时候反正不管,只有完了后再验证.并且要自己写点代码验证.假如点OK后验证下输的对不
void CMFCControlDlg::OnOK()
{
NC_ADDRESS m_na;
NET_ADDRESS_INFO m_nai;
m_na.pAddrInfo = &m_nai;
HRESULT rslt = m_netName.GetAddress(&m_na);
if (rslt != S_OK)
	m_netName.DisplayErrorTip();
else
    AfxMessageBox(_T("The format is correct"));
}

详细参考MSDN
http://msdn.microsoft.com/de-de/library/vstudio/bb399237(v=vs.100).aspx
在这里插入图片描述

  • Command Button Control:它用起来不同于一般button的地方主要是3个方面。
    1.除了button上面的caption显示的文字外还多了个note文字,相当起于进一步解释作用的文字,并是用小号的字显示出来。
    2.可以在button前面显示一个icon图标,默认是指向右边的箭头。
    3.鼠标没放过去之前不像个button,像个static text控件一样的文本信息.鼠标移上去后才变得像button。
    除了上面说的之外其他操作跟一般button一样。
    在这里插入图片描述
  • MFC Button Control:MFC自带的MFC Button Control控件等按钮可以修改颜色、添加图片、设置字体颜色等。
    在这里插入图片描述
  • MFC ColorButton Control:用来对颜色的选取采集,可以选择一个颜色并且获得对应rgb。
    在这里插入图片描述
  • MFC EditBrowse Control:选择文件或文件夹,通过设置“Browse Mode”属性指定“文件浏览”还是“文件夹浏览”,可以通过添加对象的方式将其与一个CString selectedPath对象关联选择的路径。也可以通过CString selectedPath;GetDlgItemText(IDC_MFCEDITBROWSE1, selectedPath);获得选择的文件或者文件夹路径。
    在这里插入图片描述
  • MFC VSListBox Control:列表控件,列表视图控件是对前面讲到的列表框控件List Box的改进和延伸。
    在这里插入图片描述
  • MFC FontComboBox Control:字体设置
    在这里插入图片描述
  • MFC MaskedEdit Control:定格式输入控件,只能输入指定格式内容。
    在这里插入图片描述
  • MFC MenuButton Control:是MFC专门用于在按钮上打开菜单而封装的一个CButton类。
    在这里插入图片描述
  • MFC PropertyGrid Control:MFC属性网格控件。
    在这里插入图片描述
  • MFC ShellList Control:浏览文件目录
    在这里插入图片描述
  • MFC ShellTree Control:以树形式浏览目录,结合MFC ShellList Control类似资源管理器界面,使用见上一个超链接。
    在这里插入图片描述
  • MFC Link Control:超链接
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/182118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

stm32f091芯片的学习总结

摘自芯片手册(外加自己的思考) 发现网上使用这种芯片的人较少或者说解释这种芯片的电路具体怎么画的人较少,本来想直接借鉴的,发现没有找到,于是我自己来写一篇。 一、概述 该芯片提供标准通信接口(两个i2c&#xf…

基于STM32的FreeRTOS开发(2)----Cube工程的FreeRTOS配置

为什么使用Cube进行FreeRTOS配置 STM32Cube是STMicroelectronics提供的一种软件工具,用于配置和生成STM32微控制器的固件。它提供了一个图形化用户界面,可以轻松配置微控制器的各种功能和外设,并生成初始化代码。使用Cube可以大大简化微控制…

[GNN] 图神经网络入门

GNN和GCN的入门公式一、GNN的计算二、GCN的计算跟随B站课程【GNN图神经网络最牛教程】学不会up直接下跪!图神经网络快速入门教程(GNN/GCN)的笔记 一、GNN的计算 对于一个图来说,要更新它自身的特征,也要更新它邻接节点…

前端websocket劫持漏洞(CSWSH)

0x00 什么是ws劫持 在Websocket的业务中,其中常见的漏洞是ws劫持,全称为跨站点CSWSH(Cross-Site WebSocket Hijacking)跨站WebSocket劫持漏洞。 WebSocket概念 WebSocket是通过HTTP启动的双向、全双工通信协议。它们通常用于流式传输数据和其他异步流量…

深度卷积神经网络、池化层、为什么使用卷积

目录1.深度卷积神经网络(a deep convolutional neural network)输入图像的维度是,如果,计算输出图像维度公式:。s表示步幅,p表示填充的层数。filters的通道数是和输入图像的通道数保持一致的。分析上图案例:第一层卷积…

MySQL基本查询案例练习

目录 一.案例1 需求 解决代码 二.案例2 需求 解决代码 一.案例1 创建一个学生表,插入以下数据 insert into student values(1,张明,男,89,78,90), (2,李静,男,77,73,60), …

golang map原理

简介本文主要通过探究在golang 中map的数据结构及源码实现来学习和了解map的特性,共包含map的模型探究、存取、扩容等内容。欢迎大家共同讨论。Map 的底层内存模型在 goland 的源码中表示 map 的底层 struct 是 hmap,其是 hashmap 的缩写type hmap struc…

“华为杯”研究生数学建模竞赛2005年-【华为杯】A题:交通网络的通行时间预测与最优路径决策(附获奖论文)

赛题描述 A: Highway Traveling time Estimate and Optimal Routing Ⅰ Highway traveling time estimate is crucial to travelers. Hence, detectors are mounted on some of the US highways. For instance, detectors are mounted on every two-way six-lane highways o…

树与二叉树深度剖析(一)

一. 树简介 1. 定义 (1) 树结构是一种非线性存储结构,存储的是具有“一对多”关系的数据元素的集合。 (2) 树(Tree)是n(n≥0)个节点(Node)的有限集合。在任意一颗非空树中,有且仅有一个特定的成为根(Root)…

【快速幂】876. 快速幂求逆元

876. 快速幂求逆元 文章目录题目描述输入格式:输出格式:数据范围输入样例输出样例方法:快速幂解题思路代码复杂度分析:题目描述 给定 n 组 ai,pia_i,p_iai​,pi​,其中 pip_ipi​ 是质数,求 aia_iai​ 模 …

MySQL 8.0.31中使用MySQL Workbench提示配置文件错误信息

MySQL 8.0.31中使用MySQL Workbench提示配置文件错误信息 Error opening configuration file UnicodeDecodeError:‘gbk’ coded can’t decode byte 0x92 in position 5004: illegal multibyte sequence 配置文件之前安装MySQL Server的时候编码格式好像改了, 才使的MySQL W…

高级通讯录(C语言)

目录 前言 为何要实现高级通讯录 高级通讯录实现: 创建通讯录 打印菜单 初始化通讯录 实现加载功能 实现添加功能 实现增容功能 实现删除功能 实现查询功能 实现修改功能 实现查询所有联系人功能 实现排序功能 实现清空功能 实现保存功能 实现退出功能 通讯录总代码…

基于stm32G431RBT6蓝桥杯嵌入式—新建工程和点灯

目录 cube新建工程 GPIO输出与LED模块 推挽输出模式push-pull 开漏输出模式open-drain LED原理 程序 cube新建工程 时钟树配置:一般使用内部时钟。 GPIO输出与LED模块 输入0,输出GND;输入1,输出3.3V。 P-MOS管高电平导通&a…

2023年新手卖家怎么做好跨境电商?

随着互联网时代的高速发展,跨境电商成为我国经济发展中不可忽视的重要力量,在国内优惠政策大力扶持以及线上消费习惯的加持下,跨境电商行业迎来了发展的黄金机遇期。但是随之而来的是各大资本的涌入,跨境电商中小卖家们也面对越发…

第五章 程序控制结构

一、程序流程控制介绍 在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句。 (1)顺序控制 (2)分支控制 (3)循环控制顺序控制&am…

c++11 标准模板(STL)(std::forward_list)(十二)

定义于头文件 <forward_list> template< class T, class Allocator std::allocator<T> > class forward_list;(1)(C11 起)namespace pmr { template <class T> using forward_list std::forward_list<T, std::pmr::polymorphic_…

数据库管理-第五十四期 春节俩故障(20230128)

数据库管理 2023-01-28第五十四期 春节俩故障1 19.13 bug 320763052 19.15 CSS总结第五十四期 春节俩故障 虽然春节期间除了年三十的现场值班和远程值班&#xff0c;没啥事的&#xff0c;结果还是处理了俩故障&#xff0c;今天上工&#xff0c;分析一下。 1 19.13 bug 320763…

了解3dmax面片建模方式

首先在模式里面选中面片栅格&#xff0c;Patch Grids&#xff1b; 选择四边形面片&#xff1b; 在顶视图中画一个面片&#xff0c;之后如下&#xff1b;面片从前和左看到的是一条线&#xff1b; 调整面片参数&#xff0c;长度分段和宽度分段分别为2和3&#xff1b; 工具栏选中修…

信息论复习—线性分组码的基本性质

目录 线性分组码&#xff1a; 非线性码示例&#xff1a; 线性码示例: 许用码字间的距离&#xff0d;&#xff0d;码距&#xff1a; 码距与码的检错纠错能力之间的关系&#xff1a; 线性分组码的基本性质&#xff1a; 线性分组码的最小码距与最小码重的关系&#xff1a; …

最详细的华为VRP操作指南

第二章&#xff1a;华为VRP系统 通用路由平台VRP&#xff08;Versatile Routing Platform&#xff09;是华为公司数据通信产品的通用操作系统平台。它以IP业务为核心&#xff0c;采用组件化的体系结构&#xff0c;在实现丰富功能特性的同时&#xff0c;还提供了基于应用的可裁…