ROUSTAR31 发表于 2010-5-28 18:08:54

AU3进度条怎么连续起来

本帖最后由 ROUSTAR31 于 2010-7-16 21:03 编辑

用AU3做了个进度条,但是进度条是断续的。

怎么才能使其是连续的?

系统环境:XP

已经解决烦请版主改为“以解决”

hh_wzj 发表于 2010-5-29 00:13:34

你没说清楚,什么叫进度条是断续的?可能的话贴一下源码吧!

C.L 发表于 2010-5-29 01:06:37

进度条断续?
如果你发送到控件的数据没有问题,那进度条肯定是平滑的,LZ出现的这种问题你自已要看看你送了什么数据到控件里?没有代码,不知道你出了什么问题

lynfr8 发表于 2010-5-29 20:26:22

最近的提问好多是“中文版”的
路过...

kn007 发表于 2010-5-29 23:28:25

用AU3做了个进度条,但是进度条是断续的。

怎么才能使其是连续的?

系统环境:XP
ROUSTAR31 发表于 2010-5-28 18:08 http://www.autoitx.com/images/common/back.gif

建议楼主去学习语文,特别是中文

lchl0588 发表于 2010-5-30 07:49:21

参见这贴中的参数,入门级

netegg 发表于 2010-5-30 11:06:18

建议楼主去学习语文,特别是中文
kn007 发表于 2010-5-29 23:28 http://www.autoitx.com/images/common/back.gif


    :face (1):精辟

ROUSTAR31 发表于 2010-7-16 10:12:33

建议楼主去学习语文,特别是中文
kn007 发表于 2010-5-29 23:28 http://www.autoitx.com/images/common/back.gif


   
怪我没说清楚而已,何必这么损人?

rikthhpgf2005 发表于 2010-7-16 10:15:59

回复 1# ROUSTAR31


    方法一 gui扩展有可选
方法2 加皮肤

kn007 发表于 2010-7-16 14:17:20

怪我没说清楚而已,何必这么损人?
ROUSTAR31 发表于 2010-7-16 10:12 http://www.autoitx.com/images/common/back.gif


    一个问问题的人,确没有耐心去写自己的问题。。。
想想吧

xsjtxy 发表于 2010-7-16 19:43:52

楼主要学会描述自己的遇到问题。这样的话再结合一下帮助。就不会出现这个贴子了。是不?
这是帮助里面的例子。点开始以后,下面那个进度条就是你想要的效果。

#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>

Opt('MustDeclareVars', 1)

Example()

Func Example()
    Local $progressbar1, $progressbar2, $button, $wait, $s, $msg, $m
   
    GUICreate("我的 GUI 进度条", 220, 100, -1, -1)
    $progressbar1 = GUICtrlCreateProgress(10, 10, 200, 20)
    GUICtrlSetColor(-1, 32250); 在 Windows XP 样式下不工作
    $progressbar2 = GUICtrlCreateProgress(10, 40, 200, 20, $PBS_SMOOTH)
    $button = GUICtrlCreateButton("开始", 75, 70, 70, 20)
    GUISetState()

    $wait = 20; wait 20ms for next progressstep
    $s = 0; progressbar-saveposition
    Do
      $msg = GUIGetMsg()
      If $msg = $button Then
            GUICtrlSetData($button, "停止")
            For $i = $s To 100
                $m = GUIGetMsg()
               
                If $m = -3 Then ExitLoop
               
                If $m = $button Then
                  GUICtrlSetData($button, "继续")
                  $s = $i;保存当前坐标到 $s
                  ExitLoop
                Else
                  $s = 0
                  GUICtrlSetData($progressbar1, $i)
                  GUICtrlSetData($progressbar2, (100 - $i))
                  Sleep($wait)
                EndIf
            Next
            If $i > 100 Then
                ;       $s=0
                GUICtrlSetData($button, "开始")
            EndIf
      EndIf
    Until $msg = $GUI_EVENT_CLOSE
EndFunc   ;==>Example

辣椒龙 发表于 2010-7-16 22:27:16

本帖最后由 辣椒龙 于 2010-7-16 22:28 编辑

晕,我一直都加:DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 0)
然后: $progressbar2 = GUICtrlCreateProgress(10, 40, 200, 20, $PBS_SMOOTH)
才能平滑进度,是不是跟我设置的视觉状态有关系呢?

大家是不是都不用DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 0),就可以让进度渐变,而不是一段段的呢?

zcx880517 发表于 2010-7-17 12:06:33

自己不把提问内容写清楚。让别人如何回答。。

karlpopper 发表于 2010-7-23 11:05:40

实际上所谓的连续我觉得就是个视觉欺骗 根本不是连续的
页: [1]
查看完整版本: AU3进度条怎么连续起来