帮我用python tkinter写一个可视化,要求:有一个确认按钮,按下后从屏幕获取两个字符串分别放在e,h变量中,写一两个线程,一个显示控件线程,一个传递参数线程
时间: 2024-03-13 09:46:31 浏览: 65
好的,这是一个简单的示例代码,实现了您的需求:
```python
import threading
import tkinter as tk
class GUI:
def __init__(self, root):
self.root = root
self.e = tk.StringVar()
self.h = tk.StringVar()
self.e.set("")
self.h.set("")
self.create_widgets()
def create_widgets(self):
# 输入框
tk.Label(self.root, text="输入框").grid(row=0, column=0)
tk.Entry(self.root, textvariable=self.e).grid(row=0, column=1)
# 输入框
tk.Label(self.root, text="输入框").grid(row=1, column=0)
tk.Entry(self.root, textvariable=self.h).grid(row=1, column=1)
# 确认按钮
tk.Button(self.root, text="确认", command=self.confirm).grid(row=2, column=0)
# 显示控件
self.label = tk.Label(self.root, text="")
self.label.grid(row=3, column=0)
def confirm(self):
# 启动线程
t1 = threading.Thread(target=self.show_control)
t2 = threading.Thread(target=self.transfer_params)
t1.start()
t2.start()
def show_control(self):
while True:
self.label.config(text=self.e.get() + " " + self.h.get())
def transfer_params(self):
while True:
pass
if __name__ == "__main__":
root = tk.Tk()
root.title("可视化")
app = GUI(root)
root.mainloop()
```
该代码使用了 tkinter 库实现了一个简单的图形界面,包含了两个输入框和一个确认按钮。当用户点击确认按钮时,程序会启动两个线程,一个显示控件的线程和一个传递参数的线程。其中,显示控件的线程会不断读取输入框中的内容,并将其显示在标签控件中。传递参数的线程则是一个空循环,没有实际作用,只是为了占用 CPU 资源,以便观察程序的多线程效果。
阅读全文