jb/scripts/reverse_string.ui.py
2025-06-05 16:04:09 +08:00

41 lines
1.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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("<Button-1>", 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