zoukankan      html  css  js  c++  java
  • 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) #给状态栏设文字
  • 相关阅读:
    将一个dropdownlist从一个div复制到另一个div
    【转】AOP 那点事儿(续集)
    【转】AOP 那点事儿
    spring 简单配置
    spring 基础原理
    jvm简介
    jre、jdk和jvm的关系
    【转】Jvm工作原理
    servlet简述
    Filter简述
  • 原文地址:https://www.cnblogs.com/whwywzhj/p/6139107.html
Copyright © 2011-2022 走看看