wxPython 使用按钮动态地启用和禁用工具栏中的工具
在这篇文章中,我们将学习如何使用一个按钮来动态地启用和禁用。我们将创建一个按钮和一个带有单个工具的工具栏。我们将使用一个普通的按钮,像一个切换按钮。
步骤:
1.在一个框架中创建一个工具条。
2.添加一个具有特定ID的工具。
3.在窗口中创建按钮。
4.声明一个全局计数变量并将其初始化为零。
5.当按钮被点击时增加。
6.如果计数为偶数,则启用工具,否则禁用工具。
代码示例。
import wx
class Example(wx.Frame):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.InitUI()
def InitUI(self):
pnl = wx.Panel(self)
self.toolbar = self.CreateToolBar()
qtool = self.toolbar.AddTool(12, 'Quit',
wx.Bitmap('/Desktop/wxPython/signs.png'))
self.toolbar.Realize()
self.Bind(wx.EVT_TOOL, self.OnQuit, qtool)
self.SetSize((350, 250))
self.SetTitle('Simple toolbar')
self.Centre()
self.btn = wx.Button(pnl, label ='Close', pos =(20, 20))
self.btn.Bind(wx.EVT_BUTTON, self.Onclick)
self.SetSize((350, 250))
self.SetTitle('wx.Button')
self.Centre()
def OnQuit(self, e):
self.Close()
def Onclick(self, e):
# disable tool using EnableTool
self.toolbar.EnableTool(12, False)
def main():
app = wx.App()
ex = Example(None)
ex.Show()
app.MainLoop()
if __name__ == '__main__':
main()
输出。
已启用 :
已禁用 :