python - 从获取名称到列表中的 Tkinter 信息
问题描述
我目前正在编写一个代码,它使用 Tkinter 制作的 GUI。我的问题是我想创建一个脚本: A. 打开一个窗口(我这样做了,它会循环),如果窗口可以保持打开状态并转换为自身的空白版本。B:把Get Name中的所有名字放到一个列表中,塞进一个dataframe中进行处理。我写了重要的代码。
这是我的尝试
from tkinter import *
class Name:
def __init__(self):
window = Tk()
window.title('Names to be processed please: ')
frame1 = Frame(window)
frame1.pack()
label = Label(frame1, text = "Enter a name: ")
self.name = StringVar()
self.v1 = IntVar()
self.v2 = IntVar()
entryname = Entry(frame1, text = self.name)
btGetName = Button(frame1, text = 'Get Name', command = self.processButton)
btFinished = Checkbutton(frame1, text = 'Finished',
variable = self.v1, command = self.finishedButton)
btNotFinished = Checkbutton(frame1, text = 'Not Finished',
variable = self.v2, command = self.unfinishedButton)
label.grid(row = 1, column = 2)
btGetName.grid(row = 1, column = 3)
btFinished.grid(row = 2, column = 2)
btNotFinished.grid(row = 2, column = 3)
text = Text(window)
text.pack()
window.mainloop()
def processButton(self):
name = self.name.get()
return name
def finishedButton(self):
a = self.v1.get()
return a
def unfinishedButton(self):
b = (1 if self.v2.get() == 1 else 0)
return b
obj = Name()
name = []
while obj.finishedButton() != 1:
Name()
for i in obj.processButton():
name.append(i)
print(name)
常见的错误是我得到一个空白列表。谢谢你的帮助。
解决方案
代码中的简单错误。您要确保您实际上在布局中包含 entryname,我在您的代码中没有看到。entryname.grid(row = 3, column = 1)
通过在其余网格线之后包含该行,我将 entryname 添加到布局的底部。
添加此行应该可以解决您的问题。然后我就可以self.name.get()
在函数中打印出来了processButton
。
更新:如果要将用户输入的名称保存到列表中,可以在函数中执行此操作processButton
。请参阅下面的代码以了解如何执行此操作。从这里,您可以从此列表中创建一个数据框。
def processButton(self):
name_list = []
name = self.name.get()
name_list.append(name)
print('Names list consists of: ', name_list)
return name_list
推荐阅读
- c# - C# 如何使用 LINQ 将列表一分为二
- python - 将 HLS 段文件读取到 OpenCV VideoCapture 时出现问题:读取标头时出错
- scala - 案例类中解码的circe数组总是失败案例类比较测试?
- python - 如何使用 pdb 调试 Splunk 应用程序?
- performance - 使用 docker 进行 RESTAPI 性能(压力)测试
- java - 继承层次结构对泛型的限制是什么?
- javascript - 我可以在以前的 .append() 生成的内容中使用 jQuery .append() 吗?
- excel - 我需要一个从哪里开始的想法/excel
- python-3.x - 将字符串数据带入一个热向量以进行机器学习
- python - 您如何获取每日数据的数据框并将其与每周/每月/每年平均值的数据框合并?