原标题:Python图形化界面入门教程 - 使用wxPython创建表
来自: Linux迷
网址:https://www.linuxmi.com/python-gui-wxpython-chuangjian-biao.html
在这篇Python GUI文章中,我将向您展示在wxPython中创建表。在阅读本文之后,您将能够在wxPython中创建漂亮的网格和表格。
对于包括wx的 本文,您需要导入另一个名为wx.grid的库。wx.grid.Grid及其相关类用于显示和编辑表格数据。
它们提供了丰富的功能集,可用于显示,编辑以及与各种数据源进行交互。
这是Python GUI在wxPython中创建表的完整代码
importwx
importwx.grid asgrid
classMyFrame(wx.Frame):
def__init__(self, parent, title):
super(MyFrame, self).__init__(parent, title =title, size = ( 800, 600))
self.panel = MyPanel(self)
classMyPanel(wx.Panel):
def__init__(self, parent):
super(MyPanel, self).__init__(parent)
mygrid = grid.Grid(self)
mygrid.CreateGrid( 26, 9)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(mygrid, 1, wx.EXPAND)
self.SetSizer(sizer)
classMyApp(wx.App):
defOnInit(self):
self.frame = MyFrame(parent= None, title= "Linux迷 www.linuxmi.com")
self.frame.Show
returnTrue
app = MyApp
app.MainLoop
首先,我们有我们的框架类,从wx.Frame继承,wx.Frame是一个最重要的窗口框架,它是我们在这个类中创建MyPanel对象的顶层窗口对象top-level window object。
classMyFrame(wx.Frame):
def__init__(self, parent, title):
super(MyFrame, self).__init__(parent, title =title, size = ( 800, 600))
self.panel = MyPanel(self)
之后,我们创建MyPanel类,该类是按钮,菜单,检查按钮等小部件的容器类。我们将在此类中创建网格或表格。
classMyPanel(wx.Panel):
def__init__(self, parent):
super(MyPanel, self).__init__(parent)
mygrid = grid.Grid(self)
mygrid.CreateGrid( 26, 9)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(mygrid, 1, wx.EXPAND)
self.SetSizer(sizer)
下面第一行代码,用于创建网格或表格,在第二行代码中,指定网格的行和列的大小。
importwx
importwx.grid asgrid
这些是用于创建垂直框大小调整器并将网格添加到大小调整器中的
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(mygrid, 1, wx.EXPAND)
self.SetSizer(sizer)
最后一个类是MyApp类继承自wx.App。OnInit方法通常是创建框架子类对象(frame subclass objects)。
然后开始我们的主循环(main loop)。就是这样。一旦应用程序的主事件循环处理接管,控制权就传递给wxPython。与过程性程序不同,wxPython GUI程序主要响应在其周围发生的事件,这些事件主要由用户用鼠标单击和键盘输入决定。当应用程序中的所有帧都被关闭时,app.MainLoop方法将返回,程序将退出。
运行完整代码,结果如下:
责任编辑: |