wxPython BitmapButton图片按钮的用法
BitmapButton 是一类特殊的按钮,和普通按钮的区别就是该按钮上面不显示文字而是显示图片。
下面是 BitmapButton 元素的初始化函数定义:
BitmapButton(parent, id=ID_ANY, bitmap=NullBitmap, pos=DefaultPosition, size=DefaultSize, style=BU_AUTODRAW, validator=DefaultValidator, name=ButtonNameStr)
下面演示了一个使用该元素的例子,在该例子中,主窗口包含一个图片按钮,如果单击该按钮,应用程序就退出。完整代码如下:
import wx # 引入wxPython包 # 定义主窗口类 class MainFrame(wx.Frame): def __init__(self, p, t): # 初始化函数 """ p: 父亲窗口 # 第一个参数p表示parent,也就是父元素对象 t: 窗口标题""" # 第二个参数t表示title,也就是窗口的标题 # 基类的初始化函数 wx.Frame.__init__(self, id=-1, parent=p, title=t, size=(300, 200)) # 该panel的父亲就是该窗口, id=-1就表示任意ID panel = wx.Panel(self, -1) bmp = wx.Image("exit.png", wx.BITMAP_TYPE_PNG).ConvertToBitmap() self.button = wx.BitmapButton(panel, -1, bmp, pos=(50, 20)) # 绑定事件,就是指定的button被单击后调用onClick()成员函数 self.Bind(wx.EVT_BUTTON, self.OnClick, self.button) self.button.SetDefault() def OnClick(self, event): # 一旦单击就关闭主窗口 self.Destroy() if __name__ == "__main__": # 创建一个应用程序 app = wx.App(False) # frame就是应用程序的主窗口 frame = MainFrame(None, "BitmapButton演示") frame.Show(True) # 显示主窗口 app.MainLoop() # 开始消息循环
运行后,显示如图 1 所示的窗口。
图 1 图片按钮
本文链接:http://so.lmcjl.com/news/1017/