要編寫一個進程勾選器(也就是監視和選擇進程)的Python程序,可以使用psutil庫來獲取系統當前運行的進程信息,并使用tkinter庫來創建一個圖形化界面來展示進程信息和進行選擇操作。
以下是一個簡單的示例代碼,實現了一個基礎的進程勾選器功能:
import psutil
import tkinter as tk
def update_process_list():
process_list.delete(0, tk.END) # 清空進程列表
for proc in psutil.process_iter():
try:
process = psutil.Process(proc.pid)
process_list.insert(tk.END, f"{proc.pid}: {process.name()}") # 插入進程信息
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
pass
def on_select():
selected_index = process_list.curselection()
if selected_index:
selected_pid = int(process_list.get(selected_index).split(':')[0])
selected_process = psutil.Process(selected_pid)
print(f"Selected process: {selected_process.name()}")
# 創建主窗口
root = tk.Tk()
root.title("Process Selector")
# 創建進程列表框
process_list = tk.Listbox(root, width=50)
process_list.pack()
# 創建更新按鈕
update_button = tk.Button(root, text="Update", command=update_process_list)
update_button.pack()
# 創建選擇按鈕
select_button = tk.Button(root, text="Select", command=on_select)
select_button.pack()
# 初始化進程列表
update_process_list()
# 運行主事件循環
root.mainloop()
以上代碼創建了一個簡單的圖形化界面,展示了系統當前運行的進程列表,用戶可以選擇一個進程并點擊"Select"按鈕來獲取選擇的進程信息。需要注意的是,該示例僅展示了基礎的功能,你可以根據需要進一步完善和定制功能。