请问:怎样在状态栏里显示程序执行的进度?

hwylind 2002-07-21 04:43:08
请高手指教
谢谢!
...全文
112 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
andy_lau 2002-07-21
  • 打赏
  • 举报
回复
在状态行中显示进度条

这段代码可以在状态行中的任意地方建立一个进度条

1.从View菜单中选择Resource Symbols,加入一个新的ID(在本例中假设为
ID_INDICATOR_PROGRESS_PANE),让计算机为该ID赋值也许是较好的选择.

2. 在MainFrm.cpp中寻找indicators数组,然后在该数组中加入上面新增加的ID,
请将它放在其它ID的后面,这将使以后的进度条出现在状态行的最右边,如果你
不想 让进度条出现在最右边,你也可以将ID放置在其它你想出现的地方.

3. 打开资源文件中的字符串表,然后插入一个新字符串.你可以通过Insert菜单
来加入一个新字符表,或者在字符串表上单击右键也可以完成该工作.

4. 该字符串的字符为新增的ID,后面的消息,请加入适当的空格.(加入的空格
至少要比建立的进度条要大)

现在我们已经建立了一个空的长方形,接下来我们要在这里面放入一个进度条.

1. 在MainFrm.h中声明一个公共变量,类型为CProgressCtrl(假设为m_progress)

2. 在MainFrm.h中声明一个保护变量,类型为BOOL(假设为m_bCreated)

3. 在MainFrm.cpp的OnCreate()函数中,将m_bCreated初始化为FALSE:

m_bCreated = FALSE;

4. 现在当我们需要使用进度条时,我们先检查一下是否已经建立,如果还没有,
那么 我们需要建立一个:

CMainFrame::OnSomeLongProcess()
{
RECT MyRect;
// substitute 4 with the zero-based index of your status bar pane.
// For example, if you put your pane first in the indicators array,
// you抎 put 0, second you抎 put 1, etc.
m_wndStatusBar.GetItemRect(4, &MyRect);

if (m_bCreated == FALSE)
{
//Create the progress control
m_Progress.Create(WS_VISIBLE|WS_CHILD, MyRect, &wndStatusBar, 1);

m_Progress.SetRange(0,100); //Set the range to between 0 and 100
m_Progress.SetStep(1); // Set the step amount
m_bCreated = TRUE;
}

// Now we抣l simulate a long process:
for (int I = 0; I <100; I++) { Sleep(20); m_Progress.StepIt(); } }
如果窗口在建立进度条之后,改变了大小,那么进度条并不会被重新调整位置,所
以 我们必须在WM_SIZE事件中加入自己的代码来调整该进度条的位置:

void CMainFrame::OnSize(UINT nType, int cx, int cy)
{
CMDIFrameWnd::OnSize(nType, cx, cy);
RECT rc;
m_wndStatusBar.GetItemRect(4, &rc);

// Reposition the progress control correctly!
m_Progress.SetWindowPos(&wndTop, rc.left, rc.top, rc.right - rc.left,
rc.bottom - rc.top, 0);

}
【CSDN首发】,百度上的不是完整版本,非本人发布 本教程素材来源于网络,经过本人的整理、添加以及部分的重写,将原有的Eclipse3.3版本的一些内容完全迁移到Eclipse3.6版本上来。基于开源以及分享的精神,特地将教程分享到网络上,希望所有需要的朋友因此而受益,也希望大家能有版本意识,转载时注明来自salever@126.com。 之前有一套基于Eclipse3.3版本的教程,也是本人整理,由于本人的疏忽,导致网络上的版本各不相同,但分享已久,无法改变,希望大家谅解并使用新版本的教程。 本教程由本人发布在www.ceclipse.org以及本人的blog中,希望对大家有所帮助,也希望各位喜欢分享的朋友在转载时注明,谢谢。 手头有一些不错的Eclipse资料,只可惜它用的Eclipse还是3.3版本的,很多东西都已经无法使用。最近抽些时间,更新到eclipse3.6上来,既作为为广大Eclipser入门plugin/RCP开发的一个方便之门,也是对自己近年来学习的一个总结吧。 每一章都会单独提取出来,并尽可能的独立于其他章节,更新中的源代码工程也会附加在附件面下载。 等到所有的章节都弄完以后,再统一发一个完整版本。 特点: 1,基于Eclipse 3.6.0 2,所有代码均可直接复制运行 3,简单、全面,合适初学者入手 目录 1 富客户端平台 .....................................................................................................................................9 1.1 概述 ..............................................................................................................................................9 1.2 ECLIPSE RCP 建设风格——插件,扩展和扩展点 .....................................................................9 1.3 RCP与PLUGIN ...............................................................................................................................9 2 创建第一个RCP程序 ........................................................................................................................11 2.1 创建一个RCP程序 ......................................................................................................................11 2.2 启动RCP程序 ..............................................................................................................................15 2.3 程序VS 产品 ..............................................................................................................................17 2.4 维护LAUNCH配置 .......................................................................................................................17 2.5 可能的APPLICATION ID 错误: ..................................................................................................20 2.6 应用程序的PLUGIN ID ................................................................................................................21 3 ACTIONS的用法(菜单栏和工具栏) ............................................................................................22 3.1 概述 ............................................................................................................................................22 3.2 通过编码添加 .............................................................................................................................22 3.3 “扩展”方式添加菜单和工具栏 ..................................................................................................25 3.4 添加全局快捷键 .........................................................................................................................31 3.4.1 Command+Handler+Binding 绑定 ......................................................................................31 3.4.2 Action+Command+Binding绑定 ..........................................................................................33 4 系统托盘 ...........................................................................................................................................37 5 视图 ...................................................................................................................................................42 5.1 添加示例视图 .............................................................................................................................42 5.2 添加自定义视图 .........................................................................................................................47 5.3 向VIEW添加ACTION ................................................................................................................52 RCP/Plug-in 开发自学教程 salever@126.com - 4 - 6 编辑器 ...............................................................................................................................................58 6.1 概述 ............................................................................................................................................58 6.2 创建工程 ....................................................................................................................................58 6.3 添加编辑器 ................................................................................................................................59 6.4 调用编辑器 ................................................................................................................................67 6.5 实例:文本编辑器实现 .............................................................................................................68 6.5.1 新建工程 ..............................................................................................................................68 6.5.2 添加菜单栏和工具栏 ..........................................................................................................70 6.5.3 添加编辑器 ..........................................................................................................................75 7 对话框 ...............................................................................................................................................86 7.1 概述 ............................................................................................................................................86 7.2 预定义的对话框 .........................................................................................................................87 7.2.1 概述 .....................................................................................................................................87 7.2.2 创建工程 ..............................................................................................................................87 7.2.3 添加菜单 ..............................................................................................................................87 7.2.4 调用对话框 ..........................................................................................................................87 7.3 用户自定义对话框 .....................................................................................................................89 7.3.1 概述 .....................................................................................................................................89 7.3.2 创建SWT/JFace工程 ...........................................................................................................89 7.3.3 自定义Dialog .......................................................................................................................91 7.3.4 说明 .....................................................................................................................................97 8 向导 ...................................................................................................................................................98 8.1 概述 ............................................................................................................................................98 8.2 示例 ............................................................................................................................................98 9 首选项 .............................................................................................................................................106 RCP/Plug-in 开发自学教程 salever@126.com - 5 - 9.1 首选项 ......................................................................................................................................106 9.2 使用首选项 ...............................................................................................................................106 9.3 首选项页 ..................................................................................................................................112 10 添加状态栏 ...................................................................................................................................117 10.1 简介 ........................................................................................................................................117 10.2 安装状态栏 .............................................................................................................................117 10.3 初始化状态条 .........................................................................................................................118 10.4 控制状态栏 .............................................................................................................................120 11 透视图 ...........................................................................................................................................123 11.1 简介 ........................................................................................................................................123 11.2 添加透视图 .............................................................................................................................123 11.3 显示透视图工具栏 .................................................................................................................128 11.4 显示透视图菜单 .....................................................................................................................130 12 进度条 ...........................................................................................................................................133 12.1 简介 ........................................................................................................................................133 12.2 进度条对话框 .........................................................................................................................133 12.3 JOB进度条 ...............................................................................................................................135 13 使用第三方JAR .............................................................................................................................140 13.1 概述 ........................................................................................................................................140 13.2 向构建路径中添加JAR ...........................................................................................................140 13.3 使JAR在你的运行路径有效 ................................................................................................141 14 提示和策略 ...................................................................................................................................143 14.1 控制台日志 .............................................................................................................................143 14.2 保存用户的布局 .....................................................................................................................145 RCP/Plug-in 开发自学教程 salever@126.com - 6 - 14.3 获得DISPLAY ............................................................................................................................146 14.4 使用ECLIPSE的“保存”ACTION .................................................................................................146 14.5 向你的程序添加错误日志视图 .............................................................................................146 15 产品 ...............................................................................................................................................149 15.1 概述 ........................................................................................................................................149 15.2 PRODUCT配置文件 ...................................................................................................................149 15.3 测试你的产品 .........................................................................................................................153 15.4 欢迎页面 ................................................................................................................................153 15.5 商标 ........................................................................................................................................154 15.6 风格化LAUNCHING ..................................................................................................................155 15.7 发布你的产品 .........................................................................................................................156 15.8 创建一个帮助插件工程 .........................................................................................................159 16 专题一 ECLIPSE的版本和发行包 ..............................................................................................164 16.1 版本 VERSION .........................................................................................................................164 16.1.1 版本的理解 ......................................................................................................................164 16.1.2 Eclipse的版本 ...................................................................................................................164 16.1.3 版本的选择和下载 ..........................................................................................................164 16.2 发行包 EDITION ......................................................................................................................166 16.2.1 发行包的理解 ..................................................................................................................166 16.2.2 Eclipse的发行包 ...............................................................................................................166 17 专题二 ECLIPSE的国际化与语言包 ..........................................................................................169 17.1 国际化 ....................................................................................................................................169 17.1.1 Externalize Strings ............................................................................................................169 17.1.2 中文属性文件 ..................................................................................................................175 17.1.3 国际化文件 ......................................................................................................................176 17.1.4 指定语言环境 ..................................................................................................................176 RCP/Plug-in 开发自学教程 salever@126.com - 7 - 17.1.5 Propedit工具 .....................................................................................................................177 17.2 语言包 ....................................................................................................................................177 17.2.1 Babel小组 .........................................................................................................................177 17.2.2 中文语言包的下载 ..........................................................................................................178 18 专题三 DECORATOR与MARKER的使用 .................................................................................180 18.1 简介 ........................................................................................................................................180 18.2 扩展DECORATOR ......................................................................................................................180 18.3 扩展MARKER ...........................................................................................................................184 19 专题四 RUN/DEBUG LAUNCHER实现 ....................................................................................190 19.1 ECLIPSE RUN/DEBUG 实现流程 ...............................................................................................190 19.2 扩展CONFIGURATIONTYPE .......................................................................................................192 19.3 扩展ILAUNCHSHORTCUT .........................................................................................................194 19.4 创建RUN/DEBUG CONFIGURATION界面 ..................................................................................197 19.5 指定RUN/DEBUG显示图片 .....................................................................................................204 19.6 说明 ........................................................................................................................................205 20 专题五 EQUINOX P2 方式实现RCP自动更新 .........................................................................207 20.1 概述 ........................................................................................................................................207 20.2 示例 ........................................................................................................................................207 20.2.1 Feature概念 .......................................................................................................................207 20.2.2 配置Product .....................................................................................................................210 20.2.3 配置Feature ......................................................................................................................211 20.2.4 product导出 ......................................................................................................................213 20.2.5 配置Equinox P2 ...............................................................................................................214 20.2.6 配置 Update Site .............................................................................................................215 21 专题六 COMMON NAVIGATOR FRAMEWORK初探 .............................................................216

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧