1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > wxpython按钮形状如何修改_Python图形化界面入门教程 - 使用wxPython自定义表

wxpython按钮形状如何修改_Python图形化界面入门教程 - 使用wxPython自定义表

时间:2023-02-13 03:17:13

相关推荐

wxpython按钮形状如何修改_Python图形化界面入门教程 - 使用wxPython自定义表

原标题:Python图形化界面入门教程 - 使用wxPython自定义表

来自: Linux迷

网址:/python-gui-wxpython-zidingyi-biao.html

在此Python GUI中,我们学习下在wxPython中显示“定制表” 。在第一部分中,我们了解到如何在wxPython中创建表或网格。因此在本文中,我们需要为网格或表添加更多功能。

以下是wxPython中Python GUI自定义表的完整代码

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)

mygrid.SetCellValue( 1, 1, "")

mygrid.SetCellFont( 1, 1, wx.Font( 15, wx.ROMAN, wx.ITALIC, wx.NORMAL))

mygrid.SetCellValue( 5, 5, "红色")

mygrid.SetCellBackgroundColour( 5, 5, wx.RED)

mygrid.SetCellTextColour( 5, 5,wx.WHITE)

mygrid.SetCellValue( 8, 3, "只读单元格")

mygrid.SetReadOnly( 8, 3, True)

mygrid.SetCellEditor( 6, 0, grid.GridCellNumberEditor( 1, 20))

mygrid.SetCellValue( 6, 0, "77")

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迷 ")

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)

mygrid.SetCellValue( 1, 1, "")

mygrid.SetCellFont( 1, 1, wx.Font( 15, wx.ROMAN, wx.ITALIC, wx.NORMAL))

mygrid.SetCellValue( 5, 5, "红色")

mygrid.SetCellBackgroundColour( 5, 5, wx.RED)

mygrid.SetCellTextColour( 5, 5,wx.WHITE)

mygrid.SetCellValue( 8, 3, "只读单元格")

mygrid.SetReadOnly( 8, 3, True)

mygrid.SetCellEditor( 6, 0, grid.GridCellNumberEditor( 1, 20))

mygrid.SetCellValue( 6, 0, "77")

sizer = wx.BoxSizer(wx.VERTICAL)

sizer.Add(mygrid, 1, wx.EXPAND)

self.SetSizer(sizer)

它们用于创建网格或表,还用于指定表的行和列。

mygrid = grid.Grid(self)

mygrid.CreateGrid( 26, 9)

在这里,我们手动将文本设置为网格行,并为文本添加字体大小。

mygrid.SetCellValue( 1, 1, "")

mygrid.SetCellFont( 1, 1, wx.Font( 15, wx.ROMAN, wx.ITALIC, wx.NORMAL))

在本节中,我们将文本设置为白色,并将单元格背景更改为红色

mygrid.SetCellValue( 5, 5, "红色")

mygrid.SetCellBackgroundColour( 5, 5, wx.RED)

mygrid.SetCellTextColour( 5, 5,wx.WHITE)

现在我们将单元格设置为只读,因此你不能改变那个单元格

mygrid.SetCellValue( 8, 3, "只读单元格")

mygrid.SetReadOnly( 8, 3, True)

您还可以在单元格的编辑器中设置一个数字

mygrid.SetCellEditor( 6, 0, grid.GridCellNumberEditor( 1, 20))

mygrid.SetCellValue( 6, 0, "77")

运行完整代码,结果如下:

/python-gui-wxpython-chuangjian-biao.html返回搜狐,查看更多

责任编辑:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。