import wx # Version: 4.2.1
import pandas as pd # Version: 1.2.4
# https://docs.wxpython.org/wx.ListCtrl.html#wx.ListCtrl.SetColumnWidth
class ListCtrlDataFrame(wx.ListCtrl):
# 设置列距
# DEFAULT_COLUMN_WIDTH = 77
# 设置行分隔颜色
attr_light_blue = wx.ItemAttr()# ListItemAttr()
attr_light_blue.SetBackgroundColour("#908ecc")
# 记录排序
sort_by_column = None
def __init__(self, parent, df):
wx.ListCtrl.__init__(
self, parent, -1,
style=wx.LC_REPORT | wx.LC_VIRTUAL | wx.LC_HRULES | wx.LC_VRULES | wx.LB_MULTIPLE
)
self.df = df
#左键单击某一列
self.Bind(wx.EVT_LIST_COL_CLICK, self._on_col_click)
# #右键单击单元格
# self.Bind(wx.EVT_RIGHT_DOWN, self._on_right_click)
#print(self.get_df_width(self.df))
self.ClearAll()
for i, col in enumerate(self.df.columns):
#给每一列设置列标签
self.InsertColumn(i
用wxpython的ListCtrl展示dataframe表格
于 2023-11-26 21:50:00 首次发布