为什么在我使用 state='readonly' 时输入小部件不显示文本
Why does the entry widget not display text when I use state='readonly'
我正在尝试创建一个 table 以使用条目小部件显示文本。我编写了有效的代码,但是当我尝试添加 state=readonly
时,它根本不显示文本。
所以当我 运行 这段代码时,它工作正常但输入小部件是 editable:
# Python program to create a table
from tkinter import *
class Table:
def __init__(self, root):
# code for creating table
for i in range(total_rows):
for j in range(total_columns):
self.e = Entry(root, width=20, fg='blue',
font=('Arial', 16, 'bold'), state='readonly')
self.e.grid(row=i, column=j)
self.e.insert(END, lst[i][j])
# take the data
lst = [(1, 'Raj', 'Mumbai', 19),
(2, 'Aaryan', 'Pune', 18),
(3, 'Vaishnavi', 'Mumbai', 20),
(4, 'Rachna', 'Mumbai', 21),
(5, 'Shubham', 'Delhi', 21)]
# find total number of rows and
# columns in list
total_rows = len(lst)
total_columns = len(lst[0])
# find total number of rows and
# columns in list
root = Tk()
t = Table(root)
root.mainloop()
但是,每当我在 self.e
的括号内添加 state='readonly'
时,table 就不再显示文本了。有谁知道为什么会这样?
顺便说一句,我正在使用 python 3.6。
当状态为readonly
时,无法编辑小部件。这意味着对 insert
的任何调用都会失败。这就是它的工作原理。
如果您希望小部件为只读,请在插入文本后设置状态。
我正在尝试创建一个 table 以使用条目小部件显示文本。我编写了有效的代码,但是当我尝试添加 state=readonly
时,它根本不显示文本。
所以当我 运行 这段代码时,它工作正常但输入小部件是 editable:
# Python program to create a table
from tkinter import *
class Table:
def __init__(self, root):
# code for creating table
for i in range(total_rows):
for j in range(total_columns):
self.e = Entry(root, width=20, fg='blue',
font=('Arial', 16, 'bold'), state='readonly')
self.e.grid(row=i, column=j)
self.e.insert(END, lst[i][j])
# take the data
lst = [(1, 'Raj', 'Mumbai', 19),
(2, 'Aaryan', 'Pune', 18),
(3, 'Vaishnavi', 'Mumbai', 20),
(4, 'Rachna', 'Mumbai', 21),
(5, 'Shubham', 'Delhi', 21)]
# find total number of rows and
# columns in list
total_rows = len(lst)
total_columns = len(lst[0])
# find total number of rows and
# columns in list
root = Tk()
t = Table(root)
root.mainloop()
但是,每当我在 self.e
的括号内添加 state='readonly'
时,table 就不再显示文本了。有谁知道为什么会这样?
顺便说一句,我正在使用 python 3.6。
当状态为readonly
时,无法编辑小部件。这意味着对 insert
的任何调用都会失败。这就是它的工作原理。
如果您希望小部件为只读,请在插入文本后设置状态。