1.建立主对话框和弹窗对话框

2.在主对话框添加按钮,进行主线程工作和弹窗显示。

3.主线程头文件申明线程,主线程工作函数和与弹窗交付的变量

static UINT ThreadProcess(LPVOID p);//主工作线程
    int nNum;//主线程和弹窗交付变量
    void AddNum();//主线程工作函数

4.函数

void CTestProcessBarDlg::OnBtnStart() 
{
    // TODO: Add your control notification handler code here
    AfxBeginThread(ThreadProcess,this,THREAD_PRIORITY_NORMAL,0,0,NULL);
    CProcessDlg pDlg;
    pDlg.pNum=&nNum;
    pDlg.DoModal();
}

UINT CTestProcessBarDlg::ThreadProcess(LPVOID p)
{
    CTestProcessBarDlg *pDlg=(CTestProcessBarDlg *)p;
    pDlg->AddNum();
    return 0;
}

void CTestProcessBarDlg::AddNum()
{

if (nNum>=100)
        {
            break;
        }
    for (int i=0;i<=101;i++)
    {
        Sleep(100);
        nNum=i;
    }
}

5.弹窗对话框添加Process控件

6.弹窗对话框头文件

int *pNum;//与主对话框交付指针变量
static UINT ThreadWinInfo(LPVOID p);//线程操作进度条

7.弹窗对话框函数

BOOL CProcessDlg::OnInitDialog() //初始化中加入线程
{
    CDialog::OnInitDialog();
    
    // TODO: Add extra initialization here
    m_Process.SetRange(0,100);
    m_Process.SetStep(2);
    AfxBeginThread(ThreadWinInfo,this);
    return TRUE;  // return TRUE unless you set the focus to a control
                  // EXCEPTION: OCX Property Pages should return FALSE
}

UINT CProcessDlg::ThreadWinInfo(LPVOID p)
 {
     CProcessDlg *pDlg=(CProcessDlg *)p;
     while(1)
     {
         if (*pDlg->pNum==100)
         {
             break;
         }
         pDlg->m_Process.SetPos(*pDlg->pNum);
     }
     pDlg->PostMessage(WM_CLOSE);//当主线程中的变量达到100,就自动关闭弹窗对话框
    return 0;
 }

void CProcessDlg::OnOK() 
{
    // TODO: Add extra validation here
    *pNum=100;
}

MFC对话框程序添加弹窗进度条提示相关推荐

  1. MFC编程实例二:进度条的使用

    MFC编程实例二:进度条的使用 (以下蓝色字体为手动添加的代码) (1)   创建一个基于对话框的应用程序. (2)   在对话框界面添加一个文本框.一个进度条控件(Progress控件)和一个按钮. ...

  2. VS2017 MFC对话框程序打印及打印预览的实现

    VS2017 MFC对话框程序打印及打印预览的实现 花了一个星期,研究了网上大量的MFC对话框打印及打印预览功能的demo之后,网上现有的版本都比较旧,所以选中了几个版本,合并修改,得到这个比较完美的 ...

  3. VS2010/MFC对话框程序调用Windows Media Player播放器控件

    MFC对话框程序调用Windows Media Player播放器控件播放打开的avi格式的文件,具体步骤如下: 1.根据MFC向导提示,创建一个默认的对话框项目TestMediaPlayer. 2. ...

  4. python有趣的库_Python有趣的库tqdm,给程序加一个进度条吧!

    Python开发过程中,经常会使用到大量的循环,如果能有个进度条提示我们当前程序执行到第几步了,这会是一个很有用的功能. tqdm在阿拉伯语中表示"progress",而在西班牙语 ...

  5. 微信小程序之圆形进度条(自定义组件)

    前言 昨天在微信小程序实现了圆形进度条,今天想把这个圆形进度条做成一个组件,方便以后直接拿来用. 根据官方文档自定义组件一步一步来 创建自定义组件 第一步创建项目结构 打开微信开发者工具创建一个项目, ...

  6. 基于pyqt5 构建弹窗进度条,在大型计算中实时显示进度

    在大型计算时(例如神经网络训练),经常会遇到计算时间过长,无法知道当前的计算进度,无法判断程序是否进入死循环等问题.采用进度条可以在一定程度上了解当前进度,判断后续所需的计算时间,缓解等待过程中的焦虑 ...

  7. VBA代码为ppt添加页码进度条

    VBA代码为ppt添加页码进度条 fandroid 于 2015-05-25 15:31:28 发布 4617  已收藏 5 分类专栏: office 文章标签: vba ppt 版权 office ...

  8. 微信小程序进度条组件自定义数字_微信小程序之圆形进度条(自定义组件)

    前言 昨天在微信小程序实现了圆形进度条,今天想把这个圆形进度条做成一个组件,方便以后直接拿来用. 根据官方文档自定义组件一步一步来 创建自定义组遇新是直朋能到件 第一步创建项遇新是直朋能到分览目结构 ...

  9. MFC对话框中添加工具栏

    1. 在资源管理器中添加 ToolBar资源,资源 ID为 IDR_TOOLBAR1 加入两个工具栏按钮 2. 在对话框头文件 XxxDlg.h中添加工具栏变量 CToolBar m_toolBar; ...

最新文章

  1. c++堆栈溢出怎么解决_c语言进阶:堆栈原理揭秘
  2. 【2020牛客NOIP赛前集训营-提高组(第一场)题解】( 牛牛的方程式,牛牛的猜球游戏,牛牛的凑数游戏,牛牛的RPG游戏)
  3. ORACLE sqlplus设置行数和宽度
  4. python集合的元素可以是_Python集合的元素中,为什么不可以是包含嵌套列表的元组?...
  5. 【CSS3】 理解CSS3 transform中的Matrix(矩阵)
  6. 下载任意版本的Python库
  7. 虚拟资源拳王公社:小白从0到1搭建个人私域流量池的实操方法,6招玩转流量裂变法
  8. 杭电acm2019数列有序!
  9. Java解析HTML之NekoHTML
  10. ibm336服务器显示brd,ibmx3850x5服务器故障BRD报警|升级主板微码
  11. matlab中prismastic,锂电池干货系列之锂电和金属锂能量密度计算
  12. 浏览器兼容性问题和解决方案
  13. 华泰证券python算法工程师_华泰证券高薪诚聘 技术大牛/运维平台架构师
  14. 爬取豆瓣电影Top250和数据分析
  15. 华大单片机HC32L130/HC32L136红外端口配置
  16. [Unity基础]GL图像库
  17. 知网CAJ转PDF(硕博论文带书签)
  18. 七大OSINT操作系统(开源网络情报)
  19. 江苏省普通高校“专转本”选拔考试 计算机专业大类专业综合基础理论考试大纲
  20. latex:公式的序号

热门文章

  1. 2021icpc亚洲赛区沈阳站总结
  2. Python 详细教程 —— pyautogui 库 基本用法
  3. 用Python做游戏有多有趣——这还拿不下你?
  4. python汉明距离_simhash+汉明距离计算文本相似度
  5. 查看进程占用的句柄数
  6. 架构师工资一月多少钱
  7. js(76-108)
  8. GitHub的Super Linter是“一个统治所有人的Linter”
  9. rpc--sekiro框架
  10. 第5-6周-实验作业-串口通信小试