天天看点

wxpython grid设置字体颜色_如何设置wxpython Grid顶部标题?

WxPython wiki告诉我们,每个行和列如何具有可设置的标签(标题),这些标签可以包含任何文本以及它自己的其他布局.

列标题由命令设置

SetColLabelValue(int col, const wxString& value)

将列号和所需的标签值作为参数.

This tutorial进一步显示,您案例中的完整示例代码将如下所示:

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)

myGrid.SetColLabelValue(0, "ID")

myGrid.SetColLabelValue(1, "Name")

myGrid.SetColLabelValue(2, "Lastname")

myGrid.SetColLabelValue(3, "01-Jan-13")

# etc. etc.

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()

当然,如果该日期在飞行中初始化,那么你必须获取它,例如从datetime对象添加这些行到您的代码(取自this post):

# Add to imports

import datetime

# fetch date and you can give this, not hard coded string value.

datetime.datetime.today()

要在您的标题上重复多年/次,请将以下内容视为有用:

from dateutil import rrule

from datetime import datetime, timedelta

now = datetime.now()

tenYearsLater = now + timedelta(years=10)

for dt in rrule.rrule(rrule.DAILY, dtstart=now, until=tenYearsLater):

print dt

代码源here,而不是打印,相应地设置标签.此示例打印两个时间实例之间的每个日期.您的项目需要dateutil.