• wxpython StatuBar 带进度条的状态栏



    # -*- coding: utf-8 -*- import wx class customStatusBar(wx.StatusBar): def __init__(self, parent): wx.StatusBar.__init__(self,parent,-1) self.SetFieldsCount(2) self.SetStatusWidths([-2,-1]) self.count=0 print parent.GetSize() self.gauge=wx.Gauge(self,1001,100,pos=(2,2),size=(parent.GetSize()[0],20),style = wx.GA_HORIZONTAL) self.gauge.SetBezelFace(3) self.gauge.SetShadowWidth(3) self.gauge.SetValue(50) class priceFrame(wx.Frame): def __init__(self, parent, id): wx.Frame.__init__(self, parent, id, U'带进度条的状态栏', size=(410, 385), style=wx.MINIMIZE_BOX | wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX) self.openfilename='' self.status = customStatusBar(self) self.SetStatusBar(self.status) if __name__ == '__main__': app = wx.PySimpleApp() frame = priceFrame(parent=None, id=-1) frame.Show() app.MainLoop()

    CreateStatusBar()用来增加一个状态栏。

    SetFieldsCount()方法设置将状态分为几个区。

    SetStatusText()用于设置状态栏内容。

    SetStatusWidth()用于设置各栏宽度,该方法要求一个整数的Python列表作为参数,列表的长度必须和状态栏中哉的数量一致。按列表中整数的顺序来计算对应域的宽度。如果整数是正值,那么宽度是固定的。如果你想域的宽度随框架的变化而变化,那么应该使用负值。负值的绝对值代表域的相对宽度;可以把它认为是所占总宽度的比例。例如调用statusbar.SetStatusWidth([-1, -2,-3])方法所导致的各域从左到右的宽度比例是1:2:3。

    statusBar = wx.StatusBar(self, -1)# 实例化 wx.StatusBar
    statusBar.SetFieldsCount(3) # 状态栏分成3个区域
    statusBar.SetStatusWidths([-1,-1,-1]) #区域宽度比列,用负数
    statusBar.SetStatusText("A Custom StatusBar...", 0) #给状态栏设文字
    self.SetStatusBar(statusBar) #将状态栏附加到框架上
    statusBar = self.CreateStatusBar() #调用框架wx.frame的CreateStatusBar方法
    statusBar.statusBar.SetFieldsCount(3) # 状态栏分成3个区域
    statusBar.SetStatusWidths([-1,-1,-1]) #区域宽度比列,用负数
    statusBar.SetStatusText("A Custom StatusBar...", 0) #给状态栏设文字
  • 相关阅读:
    java环境变量的搭建,《ecpilse,jdk》的下载
    Android Studio的下载和环境变量的配置
    微信小程序开发者工具包(官方版)
    Activity详解生命周期(Android)
    Android环境变量配置
    Android基础测试题(四)
    Android基础测试题(二)
    手机上实现细线的效果
    前端面试题
    js判断当前浏览器是pc端还是移动端
  • 原文地址:https://www.cnblogs.com/whwywzhj/p/6139107.html
Copyright © 2020-2023  润新知