给程序添加一个启动界面
来源:互联网 发布:壳牌经销商网络大学 编辑:程序博客网 时间:2024/06/06 03:29
测试程序为一个对话框应用程序,主要分为以下几步:
1、首先添加一个子对话框(Dialog)用来作为程序启动时的显示界面。设置ID = IDD_DISPLAY,设置对话框属性 Border = None无边框,并为对话框关联一个类:CDisplayDlg。
2、为程序添加一个Bitmap资源,用来作为程序启动时显示界面上的图像。
3、在主对话框的OnInitDialog()函数中,以模态对话框的方式创建子对话框:
CDisplayDlg DisplayDlg;DisplayDlg.DoModal();
4、为CDisplayDlg类添加WM_TIMER定时器消息的响应函数,在响应函数中调用EndDialog(IDOK)销毁对话框,并且在初始化函数OnInitDialog()开启定时器,然后为WM_ERASEBKGND消息添加响应函数,将图片绘制到子对话框中。代码实现如下:
#include "stdafx.h"#include "ManualRenameTool.h"#include "DisplayDlg.h"#include "afxdialogex.h"// CDisplayDlg 对话框IMPLEMENT_DYNAMIC(CDisplayDlg, CDialog)CDisplayDlg::CDisplayDlg(CWnd* pParent /*=NULL*/): CDialog(CDisplayDlg::IDD, pParent){}CDisplayDlg::~CDisplayDlg(){}void CDisplayDlg::DoDataExchange(CDataExchange* pDX){CDialog::DoDataExchange(pDX);}BEGIN_MESSAGE_MAP(CDisplayDlg, CDialog)ON_WM_TIMER()ON_WM_ERASEBKGND()END_MESSAGE_MAP()// CDisplayDlg 消息处理程序void CDisplayDlg::OnTimer(UINT_PTR nIDEvent){if (nIDEvent==1){KillTimer(1);EndDialog(IDOK);}CDialog::OnTimer(nIDEvent);}BOOL CDisplayDlg::OnInitDialog(){CDialog::OnInitDialog();SetTimer(1,4000,NULL);return TRUE; // return TRUE unless you set the focus to a control}BOOL CDisplayDlg::OnEraseBkgnd(CDC* pDC){CBitmap bitmap; bitmap.LoadBitmap(IDB_JTV); CDC CompatibleDC; CompatibleDC.CreateCompatibleDC(pDC); CompatibleDC.SelectObject(&bitmap); CRect rect; GetClientRect(&rect); BITMAP bmp; bitmap.GetBitmap(&bmp); pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&CompatibleDC,0,0,bmp.bmWidth,bmp.bmHeight,SRCCOPY);return TRUE;return CDialog::OnEraseBkgnd(pDC);}
阅读全文
0 0
- 给程序添加一个启动界面
- 给程序添加启动画面
- 给加密程序做一个GUI界面
- 给程序添加启动画面(C#.net )
- Qt-----给Qt程序添加启动动画
- 给Qt程序添加启动动画
- Qt-----给Qt程序添加启动动画
- Qt-----给Qt程序添加启动动画
- 给S5PV210裸机程序添加启动代码
- Qt-----给Qt程序添加启动动画
- 给微信小程序添加一个客服会话
- 一个用来给文件列表添加绝对路径的程序
- Qt-----Windows下给Qt程序添加一个图标
- 给Qt程序添加一个漂亮的图标
- 给QT程序(即.exe)添加一个漂亮的图标
- QT 给界面添加背景图片
- 给struts2添加错误界面
- android 程序启动界面
- Ora-29913: Error In Executing Odciexttableopen Callout (文档 ID 353642.1)
- Redis简易教程
- windows环境下unistd.h缺失解决方法
- springboot集成ueditor
- vim 粘贴时取消自动换行
- 给程序添加一个启动界面
- 我们承包了云栖大会阿里大数据专场,10月11日请你来
- js算日子的方法
- viewpager+fragment+tablayout适配器和fragment的一些应用
- 九度题目1049:字符串去特定字符
- HGDB不知道数据库用户密码的情况下,新库使用原密码创建该用户(适用于postgres)
- node.js杀死僵尸进程
- Java 字符串转float运算 float转字符串
- solr安装,以及建立索引关联数据库