以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 动态label怎样实现? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=52598) |
-- 作者:hdffzxf -- 发布时间:2014/6/18 19:52:00 -- 动态label怎样实现? 如下以代码:
forms("进度条窗口").Show
1、如红字部分,想实现动态的百分比变化,但是实际效果是压根显示不出来,进度条的进程比较正常!怎么解决呀? 2、另外展示进度条的窗口如果用成模式窗口就不动了,若是用成独立窗口,又担心任务进展未完成时用户进行别的操作,该如何解决呀?
|
-- 作者:有点甜 -- 发布时间:2014/6/18 19:58:00 -- 第一个问题:
试试这样
l.Text= word & str((r.Index+1)/p.Maximum*100) & "%" Application.DoEvents()
第二个问题:不能用模式窗口,你可以这样
forms("进度条窗口").Show forms("进度条窗口").ToMost LockBaseMainForm
\'执行代码
UnLockBaseMainForm |
-- 作者:hdffzxf -- 发布时间:2014/6/19 16:11:00 -- forms("进度条窗口").ToMost 这句是什么意思呢?而且报错,提示tomost不是winform的成员呀! |
-- 作者:Bin -- 发布时间:2014/6/19 16:14:00 -- TOPMOST |
-- 作者:hdffzxf -- 发布时间:2014/6/19 17:04:00 -- LockBaseMainForm是锁定主窗口,我的窗口不是主窗口,而是模式窗口,比如是:forms("设置窗口"),窗口有保存按钮,点保存按钮时调用forms("进度条窗口"),显示进度情况,但我想在进度条窗口显示过程中,用户不可以操作forms("设置窗口"),如何实现?
试验了StopRedraw和ResumeRedraw,但是效果不理想,比如竟然仍可以在进度条窗口显示过程中,拖动forms("设置窗口")并可以选定窗口中的表,不知怎么杜绝! |
-- 作者:hdffzxf -- 发布时间:2014/6/19 17:07:00 -- 或者是转换思路,将进度条窗口设为模式窗口?然后将代码写入进度条窗口的afterload事件里? |
-- 作者:有点甜 -- 发布时间:2014/6/19 17:10:00 -- 以下是引用hdffzxf在2014-6-19 17:07:00的发言:
或者是转换思路,将进度条窗口设为模式窗口?然后将代码写入进度条窗口的afterload事件里?
嗯嗯,把代码放到afterload事件。 |
-- 作者:hdffzxf -- 发布时间:2014/6/23 12:05:00 -- 接上面的思路,如果将进度条窗口设为模式窗口,将进度代码放入afterload事件的话,那针对不同的表,我就得设计N多个进度条窗口,这明显浪费资源,不是个好的解决方案。我想就设计一个进度条窗口,不同的窗体中的表都可以调用它。 |
-- 作者:hdffzxf -- 发布时间:2014/6/23 12:07:00 -- 或者我就得声明全局变量了,让label1和ProgressBar1的值对应等用全局变量,这倒也可以,但我尽量不想用全局变量 |
-- 作者:有点甜 -- 发布时间:2014/6/23 14:17:00 -- 以下是引用hdffzxf在2014-6-23 12:07:00的发言:
或者我就得声明全局变量了,让label1和ProgressBar1的值对应等用全局变量,这倒也可以,但我尽量不想用全局变量
那就没办法了,模式窗口就是要特殊处理的。 |