【问题标题】:wxPython - change the formatting and appearance of a grid objectwxPython - 更改网格对象的格式和外观
【发布时间】:2019-03-20 18:00:59
【问题描述】:

我想知道是否可以在 wxPython 中更改网格对象的格式。

具体来说,我想知道如何更改标题标签和行标签的背景颜色、字体类型、字体颜色和边框颜色

这是一个简单的网格,我想更改其格式:

 import wx
 import wx.grid as gridlib

 class MyForm(wx.Frame):

    def __init__(self):
        """Constructor"""
        wx.Frame.__init__(self, parent=None, title="A Simple Grid")
        panel = wx.Panel(self)

        myGrid = gridlib.Grid(panel)
        myGrid.CreateGrid(12, 8)

        sizer = wx.BoxSizer(wx.VERTICAL)
        sizer.Add(myGrid, 1, wx.EXPAND)
        panel.SetSizer(sizer)

if __name__ == "__main__":
    app = wx.PySimpleApp()
    frame = MyForm().Show()
    app.MainLoop()

提前致谢!

【问题讨论】:

    标签: python formatting grid wxpython appearance


    【解决方案1】:

    首先,wx.PySimpleApp 已被弃用很长时间,您真的不应该再使用它了。请改用wx.App

    至于您的问题,您需要使用wx.lib.mixins.gridlabelrenderer。该演示中有一个名为 GridLabelRenderer 的示例,您可以使用它。基本上你继承GridLabelRenderer 并修改它的Draw 方法。然后调用每列的SetColLabelRenderer 方法并将其设置为使用您的自定义渲染器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-22
      • 1970-01-01
      • 2018-09-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多