import tkinter as tk from tkinter import ttk import pyperclip def create_ui(parent, run_callback): """创建前端界面""" frame = ttk.Frame(parent) frame.grid(row=0, column=0, sticky=(tk.W, tk.E, tk.N, tk.S)) frame.columnconfigure(1, weight=1) ttk.Label(frame, text="输入字符串 1:").grid(row=0, column=0, sticky=tk.W, pady=2) input_entry = ttk.Entry(frame) input_entry.grid(row=0, column=1, sticky=(tk.W, tk.E), pady=2) ttk.Label(frame, text="输出结果 1:").grid(row=1, column=0, sticky=tk.W, pady=2) output_entry = ttk.Entry(frame, state="readonly") output_entry.grid(row=1, column=1, sticky=(tk.W, tk.E), pady=2) def copy_output(event): output = output_entry.get() if output: pyperclip.copy(output) tk.messagebox.showinfo("提示", "输出已复制到剪贴板") output_entry.bind("", copy_output) def run(): input_text = input_entry.get().strip() if not input_text: tk.messagebox.showerror("错误", "请输入字符串") return result = run_callback([input_text]) output_entry.configure(state="normal") output_entry.delete(0, tk.END) output_entry.insert(0, result[0] if result else "") output_entry.configure(state="readonly") ttk.Button(frame, text="运行脚本", command=run).grid(row=2, column=0, columnspan=2, pady=5) return frame