如何在pandastable中为不同列设置不同的对齐方式
pandastable单列设置对齐的解决方案
pandastable内置了单列对齐的配置能力,无需修改全局配置,直接操作Table实例的aligns属性即可实现,操作方式如下:
- 对齐参数可选值:
w代表左对齐(默认值)、e代表右对齐、c代表居中对齐 - 完成Table实例初始化后,直接为
实例对象.aligns[目标列索引]赋值对应对齐参数即可 - 所有列配置完成后调用
实例对象.redraw()刷新表格,配置即可生效
完整示例代码
from tkinter import * from pandastable import Table, TableModel, config class TestApp(Frame): """Basic test frame for the table""" def __init__(self, parent=None): self.parent = parent Frame.__init__(self) self.main = self.master self.main.geometry('600x400+200+100') self.main.title('Table app') f = Frame(self.main) f.pack(fill=BOTH,expand=1) df = TableModel.getSampleData() self.table = pt = Table(f, dataframe=df, showtoolbar=True, showstatusbar=True) # 这里可以保留全局对齐配置作为默认值,也可以删除 options = config.load_options() options = {'align':'w'} config.apply_options(options, pt) # 单独设置各列对齐:列索引从0开始计数 pt.aligns[0] = 'w' # 第1列左对齐 pt.aligns[1] = 'c' # 第2列居中对齐 pt.aligns[2] = 'e' # 第3列右对齐 # 刷新表格生效 pt.redraw() pt.show() return app = TestApp() #launch the app app.mainloop()
内容的提问来源于stack exchange,提问作者tfv
相关产品推荐
相关产品推荐

