vc入门宝典五(对话框)

发布时间:2026/10/30 5:56:11

vc入门宝典五(对话框) 对话框主要内容1 建立有模式对话框和无模式对话框2 控件的对齐及焦点设置3 实例4 通用对话框5 常用函数对话框可按其动作模式分为“有模式”和“无模式”两大类。对于有模式对话框在对话框被关闭之前用户无法进行其它工作。而无模式的对话框而它仍然保留在屏幕上的同时用户可以在应用程序的其它窗口进行工作。建立一个基于对话框的程序Dialog.在资源管理器中插入一个对话框Ctrlw新建一个类COwnerDiaog;在IDD_DIALOG_DIALOG中加一个按钮双击它编辑代码。void CDialogDlg::OnButton1(){COwnerDialog dlg;dlg.DoModal();}不要忘了#include OwnerDialog.h。你不关闭它无法对主对话框下达命令但你仍然可以打开其它程序。我们删除刚刚添加的代码。void CDialogDlg::OnButton1(){COwnerDialog *pDlgnew COwnerDialog();pDlg-Create(IDD_DIALOG1);pDlg-ShowWindow(SW_RESTORE);}这是一个无模式对话框你可以在处理子对话框之前对主对话框下达命令。注意如果你关闭了主对话框则子对话框也被关闭了。在Layout中有四个功能是十分有用的Tab Order(快捷键CtrlD)依次单击按钮决定它们的焦点顺序。这样当用户按Tab键切换焦点时控件获得焦点的顺序就是我们设定好的。例如一个对话框要我们输入用户名口今再按确定。我们将它们的焦点顺序分别设为1,2,3,这样用户输入了用户名再按Tab输入口今回车就可以了。Layout Align 将选择的控件按某种方式对齐Layout Space evenly 平均分配选择的控件的间隔Layout Make same size 使选择的控件大小相同我们来编一个简单程序程序随机产生一个x,用户输入yx*x,的值程序检查对错如果错了还要改正。生成一个基于对话框的应用程序去掉”TODO: 在这里设置对话控制”,这个静态控件没什么用。加入两编辑控件如果控件多的话最好改成一个容易理解的IDCtrlW将两个控件与两个整形变量m_x,m_y(命名要容易理解)相关联。加一个按钮ID改为IDC_CHECK,双击它编辑代码。void CCheckDlg::OnCheck(){UpdateData();if(m_y m_x * m_x)MessageBox(你对了);else{m_y m_x * m_x;UpdateData(false);MessageBox(根据结果想想);}}找到构造函数最好在中OnInitDialog()处理找到m_x 0;改成CTime tCTime::GetCurrentTime();int nt.GetSecond();for(int i0;in;i)m_x rand()%10;其实rand并不随机第一次调用返回值总是相同的我们可以取当前时间的秒数来决定调用次数。设置各个控件的Caption并按上述方法设置焦点并调整各控件的大小。控件显示的值与控件相关联的数成员变量的值不是同步的我们必须调用UpDateData();当我们输入了数据就调用UpdateData(true)来更新成员变量UpdateData(false)将成员变量的值显示在屏幕上。CDialog的UpDateData()更新所有的控件如果只想更新一个控件可以调用控件类的UpDateData().通用对话框经常用的是CColorDialog,CFontDialog,CFileDialog,类似于CColorDialog dlg;if(IDOKdlg.DoModal()){…dlg.GetColor();}注意CFileDialog dlg(false)表示是另存为对话框为true表示是打开对话框第一个参数没有默认值。常用函数CDialog::CloseWindow();最小化对话框。CDialog::DestroyWindow();关闭对话框OnOk,OnCancel也可以关闭对话框。CDialog::GetClientRect()获得客户区范围CDialog::GetFocus(); 获得焦点CDialog::GetFont() 获得字体CDialog::SetWindowText);设置对话框标题CDialog::SetMenu(); 设置菜单CDialog::SetFocus(); 设置焦点CDialog::SetFont(); 设置字体有些东西我们无法在构造函数中进行如SetTimer,我们可以在OnInitDialog()中进行或者在WM_SHOWWINDOW的响应函数中进行。ShowWindow(SW_HIDE);它的参数还可以是SW_HIDESW_MINIMIZESW_RESTORESW_SHOWMAXIMIZEDSW_SHOWMINIMIZEDSW_SHOWMINNOACTIVESW_SHOWNASW_SHOWNOACTIVATESW_SHOWNORMAL计算几何为骨排样优化为魂作品一亲士套料工具箱https://qinshi.blog.csdn.net/article/details/167222655作品二亲士CAD工具箱https://qinshi.blog.csdn.net//article/details/156510081经典文章推荐二维排样https://qinshi.blog.csdn.net/article/details/164169163万物皆数学https://qinshi.blog.csdn.net/article/details/143057305查阅鄙人的博文请点击博文下载学院导航https://qinshi.blog.csdn.net/article/details/163717324活到老学到老。明朝中后期大约50%的进士能当上堂官(副部及更高)能当上堂官的举人只有十余人。子墨子言之事无终始无务多业。也就是我们常说的专业的人做专业的事。
延伸阅读

更多相关文章

2026/10/30 5:51:10

HTML批量转PDF绿色工具:基于MSHTML的静默打印方案

简介:这是一款面向办公人员、教师及资料整理者的绿色免安装网页批量打印工具,专为解决频繁打印多个网页内容时操作繁琐、效率低下的痛点。用户无需安装即可直接运行主程序,一键完成多网页文件的集中打印,在报告汇编、教学材料准备…

2026/10/30 5:51:10

WSL2与Podman部署Dify:高效容器化方案详解

1. 为什么选择WSL2 Podman部署Dify?在Windows环境下运行容器化应用,传统方案往往直接采用Docker Desktop。但近年来,越来越多的开发者开始转向WSL2Podman的组合,这种技术选型背后有几个关键考量:首先,WSL2…

2026/10/30 10:22:46

k-means算法在IEEE 33节点电网集群划分中的应用

1. 电网集群划分的背景与挑战 在配电网运行管理中,IEEE 33节点系统是一个经典的测试案例。这个系统由33个配电节点组成,形成了典型的辐射状网络结构。随着分布式电源渗透率的提高,传统集中式电压调节方式面临响应速度慢、调节精度不足的问题。…

2026/10/30 10:22:46

Linux开发必备:yum包管理与vim编辑器核心技巧

1. Linux开发环境基础:yum与vim的重要性 作为Linux系统中最基础也最强大的两个开发工具,yum和vim构成了开发者日常工作的基石。我至今记得第一次在服务器上尝试用vim修改配置文件时的窘迫——面对这个看似简单却暗藏玄机的编辑器,连最基本的保…

2026/10/30 10:22:46

STM32F103标准库DHT11单总线驱动移植与时序避坑

简介:这份STM32F103 DHT11驱动程序面向使用最小系统板学习环境监测的嵌入式初学者与单片机开发者,基于标准库实现单总线温湿度采集,重点解决GPIO时序控制、定时器或软件延时、中断接收与40位数据解析等移植难点,可直接用于课程实验…

2026/10/30 10:22:46

Python手写QQ连连看:轻量交互逻辑的最小闭环实现

简介:这是一款面向编程初学者与小游戏开发爱好者的QQ连连看单机版完整项目资源,复刻经典网络玩法,无需联网即可本地运行,兼顾娱乐性与学习价值。资源包共88个文件,含32个TGA/BMP图像资源(用于游戏界面与卡片…

2026/10/30 10:22:46

从电到光:光引擎、光模块、光纤、OCS、FAU一文讲透

从“电”到“光”:一次讲透光引擎、光模块、光纤、OCS、FAU这些年我在IDC机房和网络项目里来回跑,一个很明显的感受是:凡是用铜缆的地方,都在慢慢被光替代。机柜里的交换互联从10G铜缆变成25G、100G光模块,机房之间的骨…

2026/10/30 10:17:44

多模态RL Agent训练全流程与DAPO框架解析

1. 项目概述:多模态RL Agent训练全流程解析 "训练多模态RL Agent全流程"这个标题背后,隐藏着当前AI领域最前沿的技术交叉点。作为一名长期从事强化学习落地的算法工程师,我亲历了从单模态到多模态RL系统的演进过程。多模态RL Agent…

2026/10/29 17:05:52

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/29 17:06:02

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/29 17:06:13

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/30 0:00:46

NCP1342高频准谐振反激控制器:从设计约束到验收的完整方案

简介:NCP1342 高频准谐振反激控制器应用介绍译文文档,面向电源设计工程师、硬件研发人员及开关电源学习者,帮助读者跨越英文原版资料的语言门槛,系统理解这款高集成度 QR Flyback 控制器的设计要点。文档围绕芯片核心特性展开&…

2026/10/30 0:00:46

NCP1342准谐振反激电源设计:从选型到验收的全流程解析

简介:这份文档面向电源设计工程师与开关电源学习者,系统梳理NCP1342高频准谐振反激控制器的应用要点,帮助读者快速理解这款高集成度离线电源变换器控制芯片的工作机制与设计方法。内容涵盖芯片核心特性、引脚功能定义、电气特性参数表、最大额…

2026/10/30 0:00:46

Web系统自动登出机制设计与实现全解析

1. 系统自动登出机制的设计初衷在各类Web应用和后台管理系统中,自动登出功能早已成为标配。这个看似简单的功能背后,实际上涉及用户安全、资源管理和体验优化的多重考量。作为从业十多年的老开发,我见过太多因为登出逻辑设计不当导致的安全事…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑