Wxpython wx.grid.grid如何在选择一行时不更改单元格的背景色

Wxpython wx.grid.grid如何在选择一行时不更改单元格的背景色,wxpython,wxwidgets,Wxpython,Wxwidgets,下面是wx.grid.grid的示例,该网格的选择模式是“wx.grid.grid.SelectRows”。我为column1上的每个单元格设置背景色,当我选择row1时,选择颜色将覆盖我之前设置的单元格背景色。如果可能,当我选择行时,选择颜色不会更改第1列上的单元格背景颜色 import wx, wx.grid class example(wx.Frame): def __init__(self,parent,id): wx.Frame.__init__(self,pa

下面是wx.grid.grid的示例,该网格的选择模式是“wx.grid.grid.SelectRows”。我为column1上的每个单元格设置背景色,当我选择row1时,选择颜色将覆盖我之前设置的单元格背景色。如果可能,当我选择行时,选择颜色不会更改第1列上的单元格背景颜色

import wx, wx.grid
class example(wx.Frame):
    def __init__(self,parent,id):
        wx.Frame.__init__(self,parent=parent,id=-1,size=(330,150),title='example')
        panel=wx.Panel(self,-1)
        grid_window=wx.grid.Grid(panel,id=-1,size=(320,270))
        grid_window.CreateGrid(3,3,wx.grid.Grid.SelectRows)
        grid_window.SetCellHighlightROPenWidth(0)
        grid_window.SetColLabelValue(0,'Column1')
        grid_window.SetColLabelValue(1,'Column2')
        grid_window.SetColLabelValue(2,'Column3')

        grid_window.SetCellValue(0,0,'10')
        grid_window.SetCellValue(0,1,'A')
        grid_window.SetCellValue(0,2,'a')
        grid_window.SetReadOnly(0,0,True)
        grid_window.SetReadOnly(0,1,True)
        grid_window.SetReadOnly(0,2,True)
        grid_window.SetCellBackgroundColour(0,0,'blue')

        grid_window.SetCellValue(1,0,'20')
        grid_window.SetCellValue(1,1,'B')
        grid_window.SetCellValue(1,2,'b')
        grid_window.SetReadOnly(1,0,True)
        grid_window.SetReadOnly(1,1,True)
        grid_window.SetReadOnly(1,2,True)
        grid_window.SetCellBackgroundColour(1,0,'green')

        grid_window.SetCellValue(2,0,'30')
        grid_window.SetCellValue(2,1,'C')
        grid_window.SetCellValue(2,2,'c')
        grid_window.SetReadOnly(2,0,True)
        grid_window.SetReadOnly(2,1,True)
        grid_window.SetReadOnly(2,2,True)
        grid_window.SetCellBackgroundColour(2,0,'Yellow')


if __name__ == '__main__':
    app = wx.App()
    frame =example(None,-1)
    frame.Show()
    app.MainLoop()


选择颜色将是系统
主题的一部分,而不是
wxPython
。不清楚您希望发生什么:是否仍希望行中的其他单元格显示为选中,但不希望第一列中的单元格显示为选中?如果是这样的话,我觉得这看起来很奇怪。但也许你想做些别的事情?请解释一下在这种情况下是什么。我希望行中的其他单元格显示为选中状态,而不是第一列。另一种情况我认为:整行显示为选中状态,第一列的单元格仍显示其自身的背景色。目的是颜色指我在matplotlib中显示的曲线线颜色,当我选择行时,它显示绘图中的第一列颜色线。