python - 如何使用 Tkinter 创建网格?
问题描述
我正在尝试使用 Tkinter 创建一个时间表应用程序,并且需要创建一个网格模板,如下所示:
我从 StackOverflow 中查找了一些示例(例如Tkinter | Custom widget: Infinite (horizontal) scrolling calendar),但我很难掌握 OOP 的使用。
有没有更简单的方法在 tkinter 中实现这个表?或者有什么方法可以使用 OOP 的“更简单”(?)方法来制定时间表?
谢谢
更新
我浏览了这个例子:它更容易理解,但是可以从代码中解释星号线吗?
import Tkinter as tk
class ExampleApp(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
t = SimpleTable(self, 10,2)
t.pack(side="top", fill="x")
t.set(0,0,"Hello, world")
class SimpleTable(tk.Frame):
def __init__(self, parent, rows=10, columns=2):
# use black background so it "peeks through" to **
# form grid lines
tk.Frame.__init__(self, parent, background="black")
self._widgets = []
for row in range(rows):
current_row = []
for column in range(columns):
label = tk.Label(self, text="%s/%s" % (row, column),
borderwidth=0, width=10)
label.grid(row=row, column=column, sticky="nsew", padx=1, pady=1)
current_row.append(label)
self._widgets.append(current_row)
for column in range(columns):
self.grid_columnconfigure(column, weight=1) **
def set(self, row, column, value):
widget = self._widgets[row][column] **
widget.configure(text=value) **
if __name__ == "__main__": **
app = ExampleApp()
app.mainloop()
解决方案
推荐阅读
- oracle - 我可以使用 fnd_lookup_values 的标签列来存储自定义信息吗?
- apache-kafka - Kafka Streams Processor API 清除状态存储
- python - 输出中的鲁棒局部光流 (RLOF) 坐标不正确(文档 SparseRLOFOpticalFlow)
- python - 我如何用-1替换None?
- netsuite - 如何在子列表子记录中设置值?(SuiteScript 1.0)
- python - 如何正确关闭使用 local_addr 的异步连接
- javascript - 如何将 RRule 应用于拖到日历的外部事件
- powershell - 使用带有哈希表和 PSCustomObject 的 New-ADUser 之间的区别
- javascript - locomotive-scroll 用于平滑滚动 - 身体不完全显示
- php - 如何在yii2的radioList()中添加不同的通用类