好的,下面是
一个简单的实现:

首先,我们
需要导入 `tkinter` 和 `subprocess` 模块:
```python
im
port tkinter as tk
im
port subprocess
```
然后,我们创建
一个 `Tk` 对象,并对窗口进行一些基本设置:
```python
root = tk.Tk()
root.title("
Ping Tool")
root.geometry("400
x300")
```
接下来,我们创建
一个标签和
一个文本框,用于输入要
ping 的主机:
```python
lbl = tk.Label(root, text="Enter Host:")
lbl.pack()
txt = tk.Entry(root)
txt.pack()
```
然后,我们创建
一个按钮和
一个文本框,用于显示
ping 的结果:
```python
btn = tk.Button(root, text="
Ping", command=lambda:
ping(txt.get()))
btn.pack()
result_txt = tk.Text(root, height=10, width=50)
result_txt.pack()
```
最后,我们定义
一个 `
ping` 函数,用于执行
ping 命令并将结果显示在文本框中:
```python
def
ping(host):
result_txt.delete("1.0", tk.END)
result = subprocess.run(["
ping", "-c", "4", host], capture_output=True)
result_txt.insert(tk.END, result.stdout.decode())
```
完整代码如下:
```python
im
port tkinter as tk
im
port subprocess
root = tk.Tk()
root.title("
Ping Tool")
root.geometry("400
x300")
lbl = tk.Label(root, text="Enter Host:")
lbl.pack()
txt = tk.Entry(root)
txt.pack()
btn = tk.Button(root, text="
Ping", command=lambda:
ping(txt.get()))
btn.pack()
result_txt = tk.Text(root, height=10, width=50)
result_txt.pack()
def
ping(host):
result_txt.delete("1.0", tk.END)
result = subprocess.run(["
ping", "-c", "4", host], capture_output=True)
result_txt.insert(tk.END, result.stdout.decode())
root.mainloop()
```