[英]Hi, in new to python and i want to make a GUI for my python script using tkinter
所以我正在尝试使用 Tkinter 为我的 python 脚本制作一个 GUI。 我想要我相当简单的只是 window ,您可以在其中键入要 ping 的 IP 和执行命令的按钮。 这是我的脚本:
import os
address = input("Enter Ip Here:")
os.system(f"ping {address} -t -l 65500")
所以基本上我想要的是能够在一个小的 window 中输入{address},然后按下下面的按钮来执行这个,但我不知道该怎么做。 (我已经尝试过该脚本,它可以在 cmd 提示符下运行。我只想要一个 GUI。我们将不胜感激!
我还制作了一个单独的脚本,它使用 Tkinter 打开一个 window,它有一个退出按钮来关闭 window:
import Tkinter as tk
from Tkinter import ttk
# root window
root = tk.Tk()
root.geometry('600x600')
root.resizable(False, False)
root.title('Ping Of Death')
# exit button
exit_button = ttk.Button(
root,
text='Execute',
command=lambda: root.quit()
)
exit_button.pack(
ipadx=5,
ipady=5,
expand=True
)
root.mainloop()
为此,您需要在 window 中添加一个Entry
,并在按下按钮后执行您的 ping,并将address
设置为条目的值。 这是一个关于如何工作的简单示例:
import tkinter as tk
def ping(address):
import os
os.system(f"ping {address} -t -l 65500")
root = tk.Tk()
root.geometry('600x600')
root.resizable(False, False)
root.title('Ping Of Death')
ip_input_label = tk.Label(root, text="IP: ")
ip_input_label.grid(row=0, column=0)
ip_input = tk.Entry(root)
ip_input.grid(row=0, column=1)
button = tk.Button(root, text="Ping", command=lambda: ping(ip_input.get()))
button.grid(row=1, column=0)
root.mainloop()
尝试这个:
import tkinter as tk
from tkinter import ttk
import os
def startx():
#address = input("Enter Ip Here:")
os.system(f"ping {text.get()} -t -l 65500")
# root window
root = tk.Tk()
root.geometry('600x600')
root.resizable(False, False)
root.title('Ping Of Death')
var = tk.StringVar
text = tk.Entry(root,textvariable=var, width = 25)
text.pack()
# exit button
exit_button = ttk.Button(
root,
text='Execute',
command=startx
)
exit_button.pack(
ipadx=5,
ipady=5,
expand=True
)
root.mainloop()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.