MFC增强----任务对话框CTaskDialog类
/**
注意:从Windows Vista系统才开始支持CTaskDialog类,所以在使用时最好调用 CTaskDialog::IsSupported() 方法做判断
同时:CTaskDialog类只对Unicode应用程序可用, 同时要添加头文件:include "afxtaskdialog.h"的支持
*/
void CMainFrame::OnCtaskdialog()
{
if( CTaskDialog::IsSupported() ) // 判断是否支持CTaskDialog类
{
CTaskDialog taskDlg(_T(""), _T(""), _T(""));
taskDlg.SetContent(_T("SetContent方法设置\n")
_T("还支持超链接到<a href=\"http:\\\\www.baidu.com\">百度</a>.")); //可以这样续行写,仍然是连在一起的一句话,而且可以使用超链接
taskDlg.SetMainInstruction(_T("SetMainInstruction方法设置")_T("内容可以直接写?"));
taskDlg.SetWindowTitle(_T("SetWindow方法设置")); // 加入3个命令按钮
taskDlg.AddCommandControl(, _T("Command1(ID=1)\nSecond line"));
taskDlg.AddCommandControl(, _T("Command1(ID=2)\t")_T("It is amazing!"));
taskDlg.AddCommandControl(, _T("Command1(ID=3)\t")_T("You are so clever!")); // 加入2个单选按钮
taskDlg.AddRadioButton(, _T("Radio button1(ID=4)"));
taskDlg.AddRadioButton(, _T("Radio button2(ID=5)")); // 加入一些可供用户选择显示或隐藏的解释消息
taskDlg.SetExpansionArea(_T("第一个参数:显示/隐藏消息功能的实现标题"), _T("第二个参数:点击扩展信息"),_T("第三个参数:点此隐藏信息"));
// 注意:第一个参数是在扩展信息打开时才出现的标题信息 // 配置页脚文本和页脚图标
taskDlg.SetFooterIcon( MAKEINTRESOURCE( IDI_INFORMATION) );
taskDlg.SetFooterText(_T("Foot Text!支持超链接到<a href=\"http:\\\\www.baidu.com\">百度</a>.")); // 设置任务对话框的主图标
taskDlg.SetMainIcon(MAKEINTRESOURCE( IDI_ERROR) ); // 向任务对话框添加一个进度条
taskDlg.SetProgressBarMarquee();
taskDlg.SetProgressBarRange(, );
taskDlg.SetProgressBarPosition(); // 在任务对话框的底部添加一个复选框
taskDlg.SetVerificationCheckboxText(_T("Always show this dialog?"));
taskDlg.SetVerificationCheckbox(TRUE); // 默认选中 int options = taskDlg.GetOptions();
options != TDF_ENABLE_HYPERLINKS | TDF_CALLBACK_TIMER;
taskDlg.SetOptions(options); taskDlg.DoModal();
}
else
{
MessageBox(); // 使用标准消息框
}
}
效果如下所示:

MFC增强----任务对话框CTaskDialog类的更多相关文章
- MFC中打印对话框CPrintDialog类
void CCPrintDialogView::OnPrint() { DWORD dwflags=PD_ALLPAGES|PD_NOPAGENUMS|PD_USEDEVMODECOPIES|PD_S ...
- MFC中文件对话框类CFileDialog详解及文件过滤器说明
当前位置 : 首页 » 文章分类 : 开发 » MFC中文件对话框类CFileDialog详解及文件过滤器说明 上一篇 利用OpenCV从摄像头获得图像的坐标原点是在左下角 下一篇 Word中为 ...
- 实现MFC扩展DLL中导出类和对话框
如果要编写模块化的软件,就要对对动态链接库(DLL)有一定的了解,本人这段时间在修改以前的软件时,决定把重复用的类和对话框做到DLL中,下面就从一个简单的例子讲起,如何实现MFC扩展DLL中导出类和对 ...
- MFC 如何改变对话框按钮上的文字
原文地址:http://blog.163.com/wenxianliang08@126/blog/static/8358326320110300643282/ 什么是标记菜单 如何标记菜单 如何 ...
- MFC模板CArray及其派生类
CArray及其派生类 1. 简介:访问方法及效率和普通的数组一样,比普通数组强大的功能是可以改变数组的大小.Array采用队列方式存储数据,因而其内部数据元素是以物理方式顺序排列的,所以检索.顺序执 ...
- [原]MFC中DIALOG(对话框)程序响应加速键(快捷键)
[原]MFC中DIALOG(对话框)程序响应加速键(快捷键) 2014-8-6阅读266 评论0 新建一个对话框程序,项目名为Test,删除默认确定,取消和静态文本框控件.添加一个按钮,Caption ...
- 关于JFace的自定义对话框(Dialog类)
仅仅是使用MessageDialog,InputDialog等JFace中现成的对话框类是无法满足实际项目开发需要的. 很多时候都需要自己定制对话框,自定义对话框只要在Dialog类的基础上作扩展就行 ...
- 关于JFace中的进度条对话框(ProgressMonitorDialog类)
在Windows操作系统中,最常用的进度条对话框就是文件复制时的弹出框,如果想让用户愉快的使用你开发 的软件,那么在执行某个较长时间的操作时候,就应该弹出一个进度条提示框,告诉用户程序正在做什么. 做 ...
- 关于JFace中的对话框MessageDialog类等其它类型对话框
对话框是软件系统中最常用到的界面,对话框无处不在,从界面结构来说,对话框主要是由主体的界面组件和底部窗体按钮组成. 之前的例子中已经频繁的使用到了MessageDialog.openInformati ...
随机推荐
- [洛谷1681]最大正方形II
思路:对于矩阵中的每一个元素,处理出它能扩展到的上边界$up$.左边界$left$,DP得出以该元素为右下角的最大正方形.状态转移方程:$f_{i,j}=min(f_{i-1,j-1},up_{i,j ...
- BZOJ2612 : [Poi2003]Sums
设d[i]表示能拼出的x中满足x%a[0]=i的最小的x,其中d[0]=0. 若d[x%a[0]]<=x,则一定可以拼出x,否则一定不可以. 建出带权有向图,点的标号从0到a[0]-1,i号点向 ...
- spring cloud 学习(10) - 利用springfox集成swagger
对绝大多数程序员而言,写接口文档是一件痛苦的事情,相对文档,他们更愿意写代码.最理想的情况就是:代码即文档!服务开发完成后,部署上去文档就自动生成,没错,这就是springfox + swagger要 ...
- Sed&awk笔记之sed篇(转)
Sed是什么 <sed and awk>一书中(1.2 A Stream Editor)是这样解释的: Sed is a "non-interactive" strea ...
- Serial Wire Debugging the STM32 via the Bus Pirate
Serial Wire Debugging the STM32 via the Bus Pirate 2 October 2010 Step 1 - The Bus Pirate Step 2 - D ...
- STM32CubeF4 FreeRTOS Examples don't work correctly with HAL_GetTick
because the SysTick ISR has been assigned to the FreeRTOS xPortSysTickHandler() function without reg ...
- 用sourceTree提交代码时遇到的问题
xcuserstate 每次并没有改什么东西,只是随便点了几下就会出现的未暂存文件,可以对其停止追踪! 右键,停止追踪,提交,推送.以后就不会再有这个讨厌的文件出现了! 还没有提交就拉代码的囧境 有的 ...
- 使用Axure RP原型设计实践01,使用概述
首先认识Axure RP Pro 7.0软件的默认界面布局.最上面的是工具栏区域,左侧上方的是网站地图区域(sitemap),左侧中部的是部件区域(Widgets),左侧下方的是模板区域(Master ...
- 连接ORACLE数据库,是不是必须要安装oracle客户端的运行时
大神给的回答: net连接oracle使用的是oci接口,必须安装oracle客户端,并配置本地网络服务名 tnsnames.ora.不过oracle网站有精简版的客户端软件,不到30M吧,解压,并编 ...
- IOS开发常用宏定义
//release屏蔽NSLog//放在.pch文件里#ifdef DEBUG #else#define NSLog(...) {};#endif //G.C.D#define BACK(block) ...