单文档的属性页Dialog设置

vs2010单文档中添加对话框并在对话框中添加属性框(标签框) 1.创建单文档Demo在资源视图Dialog中插入两个Dialoge,Style设置为child,Border设置为chill。为两个对话框分别添加类,基类为CPropertyPage,类名CP1,CP2。在P1的头文件添加 #include "resource.h"2.在类视图中在Demo中添加类,基类为CPropertySheet,类名为CSheet。在Sheet.h头文件中包含P1.h,P2... 阅读详情

To use a property sheet in your application, complete the following steps:

  1. Create a dialog template resource for each property page. Keep in mind that the user may be switching from one page to another, so lay out each page as consistently as possible.

    The dialog templates for all pages do not have to be the same size. The framework uses the size of the largest page to determine how much space to allocate in the property sheet for the property pages.

    When you create the dialog template resource for a property page, you must specify the following styles in the Dialog Properties property sheet:

    • Set the Caption edit box on the General page to the text you wish to appear in the tab for this page.
    • Set the Style list box on the Styles page to Child.
    • Set the Border list box on the Styles page to Thin.
    • Ensure that the Titlebar check box on the Styles page is selected.
    • Ensure that the Disabled check box on the More Styles page is selected.
  2. Create a CPropertyPage-derived class corresponding to each property page dialog template. See Adding a Class. Choose CPropertyPage as the base class.
  3. Create member variables to hold the values for this property page. The process for adding member variables to a property page is exactly the same as adding member variables to a dialog box, because a property page is a specialized dialog box. For more information, see Defining Member Variables for Dialog Controls.
  4. Construct a CPropertySheet object in your source code. Usually, you construct the CPropertySheet object in the handler for the command that displays the property sheet. This object represents the entire property sheet. If you create a modal property sheet with the DoModal function, the framework supplies three command buttons by default: OK, Cancel, and Apply. The framework creates no command buttons for modeless property sheets created with the Createfunction. You do not need to derive a class from CPropertySheet unless you want to either add other controls (such as a preview window) or display a modeless property sheet. This step is necessary for modeless property sheets because they do not contain any default controls that could be used to close the property sheet.
  5. For each page to be added to the property sheet, do the following:
    • Construct one object for each CPropertyPage-derived class that you created earlier in this process.
    • Call CPropertySheet::AddPage for each page.

    Typically, the object that creates the CPropertySheet also creates the CPropertyPage objects in this step. However, if you implement a CPropertySheet-derived class, you can embed the CPropertyPage objects in the CPropertySheet object and call AddPage for each page from the CPropertySheet-derived class constructor. AddPage adds the CPropertyPage object to the property sheet's list of pages but does not actually create the window for that page. Therefore, it is not necessary to wait until creation of the property sheet window to call AddPage; you can call AddPage from the property sheet's constructor.

    By default, if a property sheet has more tabs than will fit in a single row of the property sheet, the tabs will stack in multiple rows. To disable stacking, callCPropertySheet::EnableStackedTabs with the parameter set to FALSE. You must call EnableStackedTabs when you create the property sheet.

  6. Call CPropertySheet::DoModal or Create to display the property sheet. Call DoModal to create a property sheet as a modal dialog box. Call Create to create the property sheet as a modeless dialog box.
  7. Exchange data between property pages and the owner of the property sheet. This is explained in the article Exchanging Data.
-----------------------------------------------------------------------------------------------------------------------------
在MFC单文档项目下,一个标准的属性页对话框,包括一个CPropertySheet和几个CPropertyPage,每页的模板属性设置如上红字部分,最好具有相同的大小,如果尺寸不统一,则框架将根据最大的页来确定属性页对话框的大小。
MFC教程 以下是我从其他网站中学的内容,后有相应的网站学习链接地址,可供学习 1.选择菜单项File->New->Project,弹出“New Project”对话框。  2.左侧面板中Installed Templated的Visual C++下选择MFC,中间窗口中选择MFC Application,然后在下面的Name编辑框中键入工程名称,本例取名“Addition”,在Location编辑框 阅读详情

相关推荐

隐藏窗口的方法枚举 (VC/MFC)

    很多时候我们需要做一些后台的服务程序,这时我们就不需要弹出程序的窗口,因此便需要隐藏程序的窗口,以下就是一些我从网上或者其它途径获取的隐藏程序窗口的方法,一般的MFC应用程序有基于对话框的,单文档和多文档,而单文档和多文档的方法是一样的,所以这里只以单文档为例:1.隐藏基于对话框的MFC应用程序窗口的方法 很多人可能会将窗口创建出来,然后用一个ShowWindow(SW_HIDE)

JFDream_15的专栏 7841

MFC一一单文档下实现多标签视图(继承CTabView类)

在上一节中,讲述了拆分窗口类CSplitterWnd,具体见:http://blog.youkuaiyun.com/xuanyin235/article/details/77948615 其间提到了CTabViewEx视图类,这个类继承自CTabView类,接下来我们讲解一下单文档视图中有关多标签视图的具体实现。

xuanyin235的专栏 4789

MFC--基于vs2013入门教程

在我们使用任意一种方法添加了消息处理函数以后,都只能得到一个空的OnBnClickedAddButton()函数的函数体,要实现我们想要的功能,还需要在函数体中加入自定义功能代码。在加法计算器程序中,我们想要“计算”按钮实现的功能是,获取被加数和加数的数值,然后计算它们的和并显示到和的编辑框里。// TODO: 在此添加控件通知处理程序代码// 将各控件中的数据保存到相应的变量// 将被加数和加数的加和赋值给m_editSum// 根据各变量的值更新相应的控件。

sushang的博客 3182

MFC单文档多视图

基本步骤如下: 1.首先创建一个MFC单文档应用程序。 2.添加4个MFC类TopLView、BottomLView、TopRView、BottomRView,基类为CView。 3.添加一个MFC类CControlForm,基类为CFormView。 4.创建一个切分类,如MySplitter,基类为CSplitterWnd(默认基类选项中无此类,自己添加即可)。       添加步骤

xxjzzit的专栏 1529

【17】MFC入门到精通——MFC + VS2019 加法计算器 保姆级教程(工程创建+对话框属性+添加控件及变量+属性页对话框+消息对话框 +模态对话框+非模态对话框+CPropertyPage )

本教程详细讲解基于VS2019的MFC对话框程序开发,实现加法计算器功能。从创建MFC工程开始,介绍资源视图、类视图等核心界面操作,演示如何添加静态文本框、编辑框等控件并设置属性。教程包含完整的控件布局、变量绑定和消息处理实现过程,通过属性页对话框和消息对话框增强交互性。提供从零开始的保姆级指导,每个步骤配有详细截图说明,适合MFC初学者快速掌握对话框程序开发技巧。项目源码已上传优快云,包含完整的加法计算功能实现,可作为MFC入门练手项目。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 815

MFC单文档文件对话框propertysheet设置

MFC实现对话框设置。使用页propertysheet,实现上一步,下一步,完成等操作。

VS2015 MFC属性页<孙鑫笔记>

/************************创建属性页表单*********************************************/ 一 创建单文档程序 二 切换到资源视图通过右键添加资源,添加三个DIALOG对话框,DIALOG选择 IDD_PROPPAGE_LARGE。修改ID:IDD_PROP1,IDD_PROP2,IDD_PROP3。为每个对话框增加设计所需控件...

weixin_34290000的博客 643

mfc 基于单文档的绘图程序

mfc 实现绘图功能的程序,基于单文档,能够实现线型选择,可以画矩形,椭圆,等等,还可以改变字体的大小。

单文档程序中动态切换多个窗体

在单文档程序中动态切换多个窗体         摘要:本文通过一个程序实例描述了在VC++6.0下如何在单文档程序中通过菜单动态控制多个窗体的切换。    一、   引言    我们在编制程序中根据需求的不同会在程序风格上选择多文档、单文档或是对话框模式,对于单文档模式可能是我们使用比较多的,但有时我们想采用单文档的形式显示多个不同的窗体,如作为数据库前台应用程序就会遇到此类问题,

xiaozhuyao123的专栏 452

VC6单文档三叉分割框架(内嵌属性页)

基于单文档框架,窗体分为三个视区。我也是从网上找到的,是一个很不错的框架,贡献给大家!

第四篇:关于python程序打包的问题-找不到fsspec

这个问题困扰了我将近两天的时间一直找不到什么好的办法,甚至打算放弃。主要原因是身边没有可以述说的人,也没有可以请教的人。正在想要放弃的时候找到了解决办法。 打包后运行程序是这样的, 大概意思是找不见fsspec这个依赖,刚接触python说实话对于这些第三方库理解不是很到位,我的理解就是:类似于java程序中的jar包,程序找不见了。可怎么让他找见了,刚开始以为我自己没有安装fsspec,在cmd中进行了安装,结果如下图所示 很明显,已经安装并且安装目录都有,跟着网上的一些解决办法,在打包的时候把这.

weixin_47861710的博客 5865

C++ mfc

以下是我从其他网站中学的内容,后有相应的网站学习链接地址,可供学习 1.选择菜单项File->New->Project,弹出“New Project”对话框。 2.左侧面板中Installed Templated的Visual C++下选择MFC,中间窗口中选择MFC Application,然后在下面的Name编辑框中键入工程名称,本例取名“Addition”,在Loca...

weixin_34138056的博客 3868

Windows下OpenMBEE项目MMS部署失败经历及改正

在Github里找到了上面的第一份文档,下载了MMS源代码(不知道为什么这个代码跟上面操作克隆得到的MMS代码不一样?好像是因为Gradle的版本问题,我本地之前已经安装过7.6.4的Gradle了,于是我找到gradle-wrapper.properties文件。后面在VScode中运行了一下依然是报这个错误,我在VScode终端直接执行。不知道为什么依然没什么用。打开“Windows PowerShell”。(如果是第一次运行它,将看到更长的输出)导航到要克隆存储库的文件夹,例如,

Yo_lan_da的博客 1869

关于MFC窗口隐藏的方法

最近做的一个项目要用到隐藏窗口。个人很想编程命令行下的。但是没办法。。不会,找了找mfc隐藏窗口的代码。发现一篇好文章,转过来收藏一下。很多时候我们需要做一些后台的服务程序,这时我们就不需要弹出程序的窗口,因此便需要隐藏程序的窗口,以下就是一些我从网上或者其它途径获取的隐藏程序窗口的方法,一般的MFC应用程序有基于对话框的,单文档和多文档,而单文档和多文档的方法是一样的,所以这里...

Joysing的博客 6222

别再瞎猜了!Fluent瞬态计算时间步长到底设多少?一个公式+实战案例搞定

本文详细解析了Fluent瞬态计算中时间步长的设置方法,通过黄金公式和实战案例,帮助工程师准确确定时间步长,避免计算发散和资源浪费。文章还介绍了动态调整策略和典型工程场景的参数优化,提升仿真效率和精度。

weixin_42638178的博客 427

【UE4】Hierarchical Instanced Static Mesh——一种速度优于Spawn的实例化物体组件

最近需要在场景中实例出很多个相同的模型,位置也很有规律,并且要对它的位置信息进行更新。 但是一个个拖进去实在太麻烦,就发现了Spawn Actor这个蓝图方法,可以实例一个蓝图类在场景中。 但是由于数量较大,实例化的速度太慢,这时发现了一个神奇的组件——Hierarchical Instanced Static Mesh。 新建一个蓝图类,添加该组件,在细节里添加你要实例化的模型对象。 ...

ColorGalaxy 1万+

MFC最详细入门教程

转 mfc最详细入门教程 置顶 2017年11月24日 10:07:52 wang18323834864 阅...

Blasio的第一个博客空间 2万+

五、实战pxe安装ubuntu 22.04 软raid1(实际生产pxe配置)

这段配置文件是一个cloud-init的自动安装配置,用于自动化部署Ubuntu服务器操作系统。它定义了从系统身份、键盘布局、区域设置到磁盘分区和RAID配置的一系列设置,并且包含了在安装过程的最后阶段执行的一些命令。基础设置version: 1指定了autoinstall配置文件的版本。source定义了安装源,这里是ubuntu-server。identity设置了主机名(hostname)、用户(username)和密码(password注意这里的密码是经过加密的。键盘与语言设置。

jundao1997的专栏 999

MFC隐藏主窗口的方法

隐藏基于对话框的MFC应用程序窗口的方法 (推荐这个方法,非常好用) 很多人可能会将窗口创建出来,然后用一个 ShowWindow(SW_HIDE) 的方法去隐藏窗口,当然这是可以做到隐藏的功能,但是有一点不足的地方就是窗口在隐藏之前会有一下短瞬的闪烁,而以下这种方法可以解决这种问题: 在 C***App::InitInstance() 的函数中将以下的这一段注释掉: C***Dlg dl

学而不思则罔 2714

uni-app:实现APP设置手机闹钟+取消闹钟+响铃重复/文字等,帮用户设置好闹钟并备注文本,uni-app设置安卓系统闹钟和苹果ios系统闹钟(uniapp调用手机上的闹钟,详细示例代码demo)

uniapp设置安卓和iOS闹钟的插件,uni-app设置安卓系统闹钟,uniapp设置苹果ios系统闹钟,uniapp设置定时闹铃的完整解决方案,UniApp设置手机闹钟,uniApp如何设置手机闹铃,uniapp设置闹钟,设置闹钟提醒,uni-app设置安卓系统闹钟_通过uniapp设置原声闹钟,调用android系统闹钟,如何在App中启动系统闹钟,uniapp如何取消闹钟,通过调用ios的原生接口来设置手机闹钟,uni-app 调用手机闹钟功能,uniap调用ios系统闹钟,uniapp调用手机上的

✅ 精选推荐文章 4235

在 LangGraph 中集成 Skills 增强智能体能力

LangGraph 的核心是通过**状态机 + 节点(Node) + 工具(Tool)**来编排智能体流程,你可以把 Skills 理解为“封装好的工具或可复用的任务流”,下面是一套可落地的集成方案。

lpfasd123的博客 1180
上一篇: CTaskDialog的使用
下一篇: MFC之Menu
lniwn
博客等级 码龄16年 33粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值