社区
VC.NET
帖子详情
VC.NET中如何创建非模态对话框
mfqhyn
2004-03-22 03:37:22
在VC.NET中如何创建非模态对话框,创建了模态对话框是否可以通过修改属性而变成
非模态对话框?
...全文
98
3
打赏
收藏
VC.NET中如何创建非模态对话框
在VC.NET中如何创建非模态对话框,创建了模态对话框是否可以通过修改属性而变成 非模态对话框?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mfqhyn
2004-03-25
打赏
举报
回复
谢谢二位
masterz
2004-03-23
打赏
举报
回复
添加wm_ncdestroy message handler,
加上 delete this;
chensan
2004-03-23
打赏
举报
回复
1、insert Dialog,为之创建一个类,这个跟模式对话窗一样
2、在要弹出对话窗的地方用指针的方式创建CModellessDlgNew * Testdlg;
Testdlg=new CModellessDlgNew;
Testdlg->Create(IDD_DIALOG1,NULL);
Testdlg->ShowWindow(SW_SHOW);
不用修改什么属性,都利用对话框资源,只是显示的方法不同而已.
VC
++
.NET
创建
一个
非
模式
对话框
摘要:
VC
/C++源码,界面编程,
对话框
,
非
模式
对话框
使用
VC
++
.NET
创建
一个
非
模式
对话框
,基于文件的标准文档命令,AfxEnableControlContainer(); // 标准初始化 // 如果未使用这些功能并希望减小 // 最终可执行文件的大小,则应移除下列 // 不需要的特定初始化例程 // 更改用于存储设置的注册表项 // TODO: 应适当修改该字符串, // 例如修改为公司或组织名 SetRegistryKey(_T("应用程序向导生成的本地应用程序")); LoadStdProfileSettings(4);
用户
模态
对话框
内子视图(子窗口)的预览和打印(之二)
MFC的视图打印/预览功能基于CView::OnFilePrint和CView::OnFilePrintPreview这两个函数。 如果要对用户自定义
对话框
(
模态
)内的子视图进行打印,直接调用该视图的CView::OnFilePrint即可,弹出的“选择打印机”
对话框
同样也是
模态
对话框
,覆盖在用户
对话框
上。 如果要对用户
对话框
内的视图进行预览,直接调用该视图的CView::OnFilePrintPreview后,预览视图(MFC CPreviewView类实例)内虽然预览正常,但是挡住了用户
对话框
。由于用户
对话框
是
模态
的,导致预览视图上的“打印...”、“上一页”、“下一页”、“放大”、“缩小”、“单页/双页”和“关闭”等按钮均无法响应鼠标点击,处于“假死”状态。 解决方法: 第一个解决方法是先关闭用户
对话框
,再启动预览,详见http://download.csdn
.net
/detail/oliver_zheng/7639379 第二个解决方法仍然保持用户
对话框
,但是由于
对话框
为
模态
,无法利用主框架窗口CMainFrame作为预览框架,因此要另外
创建
并显示一个框架窗口(CFrameWnd的派生类),作为预览窗口。 另外
创建
的框架窗口类名为CPrintPreviewFrameWnd,其对应的单文档视图是CViewPrintPreview类,利用这些关联信息
创建
一个单文档模板,利用此单文档模板
创建
框架窗口,并在其内嵌视图(CViewPrintPreview类)
中
保存原主框架(CMainFrame)、用户
对话框
和其上需要打印的视图(CTestView)。然后基于CViewPrintPreview类启动预览和打印(具体过程详见第一个解决办法)。由于CViewPrintPreview的各个相关虚函数诸如OnPreparePrinting、OnBeginPrinting、OnPrepareDC、OnPrint和OnEndPrinting都被重载,用于调用真正需要打印的视图CTestView的各自函数,因此CViewPrintPreview实际上只是个“
中
介”视图,是连接预览视图(MFC CPreviewView类)和CTestView的桥梁。 当打印或者预览结束后,关闭自行
创建
的框架窗口CPrintPreviewFrameWnd,利用CViewPrintPreview类
中
实现保存的信息恢复主框架和用户
对话框
,恢复打印/预览前的环境。 代码(实现了第二个解决方法)在
VC
2010下编译通过。第一个解决方法的源码详见http://download.csdn
.net
/detail/oliver_zheng/7639379
一个
模态
对话框
,将背景淡化为灰色,模仿XP关闭屏幕
DimmerDialog是一个
.NET
类,它显示一个模式
对话框
,该
对话框
的背景为灰色,就像Windows XP的“关闭”
对话框
一样。 当您的应用程序需要显示一个
非
常重要的消息框或需要立即引起用户注意的表单时,可以使用此方法。
收藏多年的Windows程序设计
收藏多年的Windows程序设计,不论您使用
VC
、delphi或是
.net
,只要是开发Windows下的程序,强烈建议您收藏到自己的硬盘。
【目录】
开始
WINDOWS环境
WINDOWS程序设计选项
编写第一个WINDOWS程序
Unicode简介
字符集简史
宽字符和C
宽字符和WINDOWS
窗口和消息
自己的窗口
WINDOWS程序设计的难点
输出文字
绘制和更新
GDI简介
滚动条
建立更好的滚动
图形基础
GDI的结构
设备内容
画点和线
绘制填入区域
GDI映像方式
矩形、区域和剪裁
键盘
键盘基础
按键消息
字符消息
键盘消息和字符集
插入符号(不是光标)
鼠标
鼠标基础
显示区域鼠标消息
非
显示区域鼠标消息
程序
中
的命
中
测试
拦截鼠标
鼠标滑轮
定时器
定时器入门
定时器的使用:三种方法
定时器用于时钟
以定时器进行状态报告
子窗口控件
按钮类别
控件与颜色
静态类别
滚动条类别
编辑类别
清单方块类别
菜单及其它资源
图标、光标、字符串和自订资源
菜单
键盘快捷键
对话框
模态
对话框
非
模态
对话框
通用
对话框
剪贴簿
剪贴簿的简单使用
复杂的剪贴簿用法
实作剪贴簿浏览器
使用打印机
打印入门
打印图形和文字
位图和Bitblt
位图入门
位图尺寸
位块传输
GDI位图对象
与设备无关的位图
DIB文件格式
显示和打印
DIB和DDB的结合
调色盘管理器
使用调色盘
调色盘动画
调色盘和真实世界图像
DIB处理链接库
文字和字体
简单的文字输出
字体的背景
逻辑字体
字体列举
段落格式
有趣的东西
MetaFile
旧的MetaFile格式
增强型MetaFile
多重文件界面
MDI概念
MDI的范例程序
多任务和多线程
多任务的各种模式
WINDOWS的多线程处理
线程同步
事件信号
线程区域储存空间(TLS)
动态链接库
动态链接库的基本知识
各式各样的DLL讨论
声音与音乐
WINDOWS和多媒体
波形声音
MIDI和音乐
领略Internet
WindowsSockets
WININET和FTP
VC
++2010权威开发指南+源代码
资源比较大,分成两部分上传。 第一部分 Visual C++ 2010开发与新特性 第1章 Visual C++ 2010开发环境简介 1 1.1 Visual C++ 2010简介 1 1.2 Visual C++ 2010下载安装指南 1 1.3 Visual C++ 2010主要特点与 1.3 新特性 3 1.4 Visual C++ 2010开发环境操作 1.4 指南 6 1.4.1
创建
Visual C++应用程序 6 1.4.2 Visual C++ 2010菜单介绍 9 1.5 Visual C++ 2010 MFC简介 12 1.6 Visual C++ 2010 CLR简介 13 1.7 Visual C++ 2010 64位编程 14 1.8 支持新的C++语言标准 14 1.8.1 支持新的C++语言标准 1.8.1 (C++ 0x) 14 1.8.2 Lambda表达式 15 1.8.3 静态断言static_assert 17 1.8.4 auto关键字 18 1.8.5 右值引用 19 1.8.6 安全数据类型 22 1.8.7 移动构造 23 1.9 支持开发并行程序 26 1.9.1 运行库支持native代码 26 1.9.2 调试和分析工具 29 1.10 对MFC的增强 31 1.10.1 任务
对话框
CTaskDialog 31 1.10.2 重启管理器(Restart Manager)支持 33 1.10.3 支持新的用户界面风格 34 第2章 MFC应用程序框架 37 2.1 用MFC向导生成应用程序 37 2.1.1 生成的程序框架 37 2.1.2 生成的应用程序类型 43 2.1.3 向导生成工程文件简介 46 2.2 应用程序框架分析 46 2.2.1 框架简介 47 2.2.2 MFC应用程序运行流程 50 2.2.3 应用程序窗口 51 2.2.4 消息机制与消息循环 59 2.3 文档与视图 65 2.3.1 文档类结构分析 65 2.3.2 视图类结构分析 65 2.3.3 文档与视图的关系 67 2.3.4 SDI应用程序分析 69 2.3.5 MDI应用程序分析 69 2.4 工具栏与状态栏 69 2.4.1 工具栏 70 2.4.2 状态栏 78 2.5 MFC新功能——Office 2007 2.5.1 风格程序分析 85 2.6 MFC新功能——Visual Studio 2.6.1 风格程序分析 90 2.7 MFC新功能——Windows资源 2.7.1 管理器风格程序分析 98 2.8 应用程序框架类对象分析 100 2.8.1 视图类对文档类的调用 100 2.8.2 在框架类
中
获得当前的文档类和视图类对象指针 101 2.8.3 获得应用程序类对象的指针 101 2.8.4 从应用类对象
中
获得主框架类对象的指针 101 2.9 小结 102 第3章 Visual C++ 2010 MFC菜单编程 103 3.1 菜单编程 103 3.1.1
创建
菜单 104 3.1.2
创建
菜单热键 115 3.1.3 标记菜单 115 3.1.4 给菜单加入图标 119 3.1.5 禁用菜单 121 3.1.6 移除与加载菜单 127 3.2 菜单消息的传输机制 129 3.2.1 菜单消息的分类 129 3.2.2 菜单消息的传输路由 129 3.3 动态菜单操作 131 3.3.1 添加菜单 131 3.3.2 插入菜单 133 3.3.3 删除菜单 135 3.3.4 插入菜单的命令响应 136 3.3.5 修改菜单 137 3.4 小结 140 第4章 Visual C++ 2010 MFC
对话框
编程 141 4.1
对话框
简介 141 4.1.1
对话框
的控件简介 141 4.1.2
对话框
的种类简介 149 4.1.3 设计
对话框
150 4.2
创建
与销毁
对话框
153 4.2.1
模态
对话框
153 4.2.2
非
模式
对话框
159 4.2.3 属性页
对话框
163 4.3 消息
对话框
173 4.4 通用
对话框
175 4.4.1 文件打开
对话框
176 4.4.2 文件保存
对话框
178 4.4.3 颜色
对话框
179 4.4.4 字体
对话框
181 4.4.5 查找
对话框
183 4.4.6 页面设置
对话框
185 4.4.7 打印
对话框
186 4.5 小结 187 第5章 Visual C++ 2010 MFC
对话框
控件 188 5.1 Visual C++ 2010 Button控件简介与开发 191 5.2 Visual C++ 2010 List Box 控件简介与开发 193 5.3 Visual C++ 2010 Com boBox控件简介与开发 195 5.3.1
创建
扩展组合框控件 196 5.3.2 在扩展组合框控件
中
使用 5.3.2 图像列表 197 5.3.3 设置各项的图像 197 5.3.4 处理扩展组合框控件
中
的通知消息 198 5.4 Visual C++ 2010 List控件简介与开发 198 5.4.1 列表控件和列表视图 199 5.4.2 列表项和图像列表 199 5.4.3 回调项和回调屏蔽 200 5.4.4
创建
列表控件 200 5.4.5
创建
图像列表 201 5.4.6 向控件添加列(报表视图) 204 5.4.7 向控件添加项 205 5.4.8 在列表控件
中
滚动、排列、 5.4.8 排序和查找 205 5.4.9 在列表控件
中
实现工作区 205 5.4.10 处理列表控件
中
的通知消息 206 5.4.11 更改列表控件样式 206 5.4.12 虚拟列表控件 207 5.4.13 列表控件的消息映射 209 5.4.14 列表控件的风格选项及表头设置 210 5.4.15 销毁列表控件 210 5.5 Visual C++ 2010 Edit控件简介与开发 211 5.6 Visual C++ 2010 Rich Edit控件简介与开发 213 5.6.1 Rich Edit控件
中
的字符格式 215 5.6.2 Rich Edit控件
中
的段落格式 215 5.6.3 Rich Edit控件
中
的当前选定内容 215 5.6.4 Rich Edit控件
中
的分词 216 5.6.5 Rich Edit控件
中
的剪贴板操作 216 5.6.6 Rich Edit控件
中
的流操作 216 5.6.7 Rich Edit控件
中
的打印操作 216 5.6.8 无底的Rich Edit控件 217 5.6.9 来自Rich Edit控件的通知 217 5.7 Visual C++ 2010 Progress控件简介与开发 219 5.7.1 进度控件的样式 219 5.7.2 进度控件的设置 219 5.7.3 操作进度控件 220 5.8 Visual C++ 2010 Tree控件简介与开发 220 5.8.1 树控件样式 221 5.8.2 树控件父项和子项 221 5.8.3 树控件项位置 222 5.8.4 树控件项标签 222 5.8.5 树控件标签编辑 223 5.8.6 树控件项的状态 223 5.8.7 树控件图像列表 224 5.8.8 树控件项选择 224 5.8.9 树控件拖放操作 224 5.8.10 树控件项信息 225 5.8.11 树控件通知消息 225 5.9 Visual C++ 2010 DBgrid控件简介与开发 226 5.9.1 示例程序1 226 5.9.2 示例程序2 227 5.10 Visual C++ 2010 Rebar控件简介与开发 228 5.10.1 在Rebar控件
中
使用图像列表 230 5.10.2 在Rebar控件
中
使用对话栏 231 5.10.3 处理Rebar控件
中
的通知消息 231 5.11 Visual C++ 2010 Timer控件简介与开发 232 5.12 Visual C++ 2010 Tab控件简介与开发 234 5.12.1 选项卡和选项卡控件属性 235 5.12.2 选项卡控件的使用方法 235 5.12.3
创建
选项卡控件的方法 235 5.12.4 处理选项卡控件通知消息 236 5.12.5 CTabCtrl类简介 236 5.13 Visual C++ 2010 IP控件简介与开发 241 5.14 Visual C++ 2010 Picture控件简介与开发 241 5.15 Visual C++ 2010 Slider控件简介与开发 244 5.15.1 滑块控件样式 244 5.15.2 滑块控件成员函数 245 5.15.3 滑块控件通知消息 246 5.16 Visual C++ 2010 Scroll Bar控件简介与开发 246 5.17 Visual C++ 2010 Hot Key控件简介与开发 248 5.17.1 使用热键控件 248 5.17.2 设置热键 249 5.18 Visual C++ 2010 Animation控件简介与开发 249 5.18.1 使用动画控件 249 5.18.2 动画控件发送的通知 250 5.19 Visual C++ 2010 Spin控件简介与开发 250 5.19.1 数值调节钮的样式 250 5.19.2 数值调节钮成员函数 251 5.20 Visual C++ 2010 GroupBox控件简介与开发 251 5.21 Visual C++ 2010 Data Time Picker控件简介与开发 252 5.21.1
创建
日期和时间选择器控件 253 5.21.2 访问嵌入的月历控件 253 5.21.3 在日期和时间选择器控件
中
使用自定义格式字符串 254 5.21.4 在日期和时间选择器控件
中
使用回调字段 254 5.21.5 处理日期和时间选择器控件
中
的通知消息 256 5.22 Visual C++ 2010 Month Canlendar控件简介与开发 256 5.22.1
创建
月历控件 257 5.22.2 处理月历控件
中
的通知消息 257 5.22.3 设置月历控件的日状态 257 5.23 Visual C++ 2010 Custom控件简介与开发 258 5.23.1 使用MFC方法定制控件必备的几个基本概念 259 5.23.2 定制自定义控件的3种常见方法 260 5.24 Visual C++ 2010 SysLink控件简介与开发 260 5.25 Visual C++ 2010 Split Button控件简介与开发 261 5.26 Visual C++ 2010 Network Address控件简介与开发 262 5.27 Visual C++ 2010 Check Box控件简介与开发 262 5.28 Visual C++ 2010 Radio Button控件简介与开发 264 5.28.1 为单选按钮控件分组 264 5.28.2 获得被选
中
的单选按钮的文本 264 5.29 Visual C++ 2010 MediaPlayer控件简介与开发 265 5.30 小结 266 第二部分 Visual C++ 2010下MFC开发 第6章 计算机测控系统概述 267 6.1 Visual C++ 2010 SDI开发简介 267 6.1.1 建立应用程序基本框架 267 6.1.2 处理视图 267 6.1.3 处理文档 271 6.1.4 串行化处理 274 6.1.5 SDI应用程序编程思路 275 6.2 Visual C++ 2010 MDI开发简介 277 6.2.1 多文档接口 277 6.2.2 生成程序 278 6.2.3 程序类、文件和代码 279 6.2.4 自定义资源 281 6.3 Visual C++ 2010 View开发 282 6.3.1 生成源文件 283 6.3.2 初始化视图类数据成员 283 6.3.3 加入消息处理功能 285 6.3.4 设计程序资源 290 6.3.5 定制MiniDraw窗口 292 6.3.6 程序清单 293 6.4 Visual C++ 2010 EditView开发 298 6.4.1 生成MiniEdit程序 299 6.4.2 修改程序菜单 300 6.4.3 编辑加速键 301 6.4.4 程序清单 303 6.5 Visual C++ 2010 FormView开发 306 6.5.1 自定义FormDemo程序 307 6.5.2 程序清单 314 6.6 Visual C++ 2010 ScrollView开发 319 6.6.1 加入滚动功能 319 6.6.2 坐标换算 319 6.6.3 限制图形大小 322 6.6.4 改变鼠标光标 325 6.7 Visual C++ 2010 HtmlEditView开发 328 6.8 Visual C++ 2010 HtmlView开发 331 6.9 Visual C++ 2010 ListView开发 335 6.10 Visual C++ 2010 RichEditView开发 335 6.11 VisualC++ 2010 TreeView开发 336 6.12 Visual C++ 2010 Office 2007风格文档视图开发框架 337 Visual C++ 2010 Visual Studio 6.13 2008风格文档视图开发框架 342 6.14 Visual C++ 2010 Windows资源管理器风格文档视图开发框架 346 6.15 小结 350 …… 第7章 VisualC++2010MFC应用程序界面与美化 第8章 VisualC++2010MFC文本与字体 第9章 VisualC++2010MFC图形图像编程 第10章 VisualC++2010MFC动态函数链接库 第11章 VisualC++2010MFCActiveX控件 第12章 VisualC++2010MFC文件与注册表操作 第13章 VisualC++2010MFC数据库开发 第14章 VisualC++2010MFC多线程程序设计 第15章 VisualC++2010MFC网络程序设计 第16章 VisualC++2010MFC进程通信 第三部分 VisualC++2010下MFC与CLR进行开发 第17章 VisualC++2010CLR开发基础 第18章 VisualC++2010CLRWindows窗口编程 第19章 VisualC++2010MFC与
.NET
交互编程 第四部分 发布VisualC++2010程序 第20章VisualC++2010应用程序部署 第五部分 基于Windows7平台用VisualC++2010开发 第21章 VisualC++2010基于Windows7新特性开发
VC.NET
7,540
社区成员
27,673
社区内容
发帖
与我相关
我的任务
VC.NET
.NET技术 VC.NET
复制链接
扫一扫
分享
社区描述
.NET技术 VC.NET
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章