《Python+Kivy(App开发)从入门到实践》自学笔记:简单UX部件——ProgressBar进度条

本文介绍Kivy中ProgressBar组件的使用方法,包括其基本属性如最大值、当前值及标准化值等,并提供了一个动态更新进度条的例子。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

章节知识点总揽

4.7 ProgressBar进度条

        ProgressBar进度条用于显示某些任务的进度,由于当前(1.11.1版本)仅支持水平模式,垂直模式上不可用,且进度栏没有交互元素,是仅用于显示的窗口小部件。针对这种情况,在使用时只需分配一个值作为当前进度即可。

        ProgressBar进度条的属性比较简单,包括以下三个:

                max:允许的最大值,默认为100;

                value:滑块使用的当前值,应为0到max之间;

                value_normalized:0-1范围内的标准化值。

        实例:添加progressBar进度条

        窗口中添加一个ProgressBar进度条,首先新建一个main.py文件,为了使进度条有动态效果,这里引入一个Clock类,通过Clock的schedule_interval()方法,动态地为value赋值,具体代码如下:

main.py内容:

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.clock import Clock


class ProgressBarWidget(BoxLayout):
    def __init__(self,**kwargs):
        super().__init__(**kwargs)
        self.i = 0

    def clicked(self):
        #每0.5秒调用update_bar()方法一次
        self.update_bar_trigger = Clock.schedule_interval(self.update_bar,0.5)

    def update_bar(self,dt):
        #赋值
        self.ids.progress_bar.value += self.i
        self.i += 1
        self.update_bar_trigger()

class ProgressBarApp(App):
    #实现App类的build()方法(继承自App类)
    def build(self):
        return ProgressBarWidget()

if __name__ == '__main__':
    from kivy.core.window import Window
    Window.clearcolor = [.8,.8,.8,1]
    ProgressBarApp().run()
        

        根据ProgressBarApp()类,新建progressbar.kv文件,在其内添加一个进度条,并设置on_touch_down事件,具体代码如下:

<ProgressBarWidget>:
	ProgressBar:
		value:30
		id:progress_bar
		max:100
		on_touch_down:root.clicked()

        运行main.py,当点击屏幕后,启动进度条走动的动作,结果如下图:

 

上一篇:简单UX部件——Slider滑块

下一篇:简单UX部件——ToggleButton切换按钮

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静候光阴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值