import tkinter as tk
from tkinter import messagebox

def convert_weight_gui():
    def calculate():
        try:
            weight = float(entry_weight.get())
            unit = unit_var.get()
            
            result_kg = 0
            result_lb = 0
            
            if unit == "kg":
                result_kg = weight
                result_lb = weight * 2.20462
            elif unit == "lb":
                result_lb = weight
                result_kg = weight * 0.453592
            elif unit == "jin":
                result_kg = weight * 0.5
                result_lb = weight * 1.10231
            
            label_result.config(text=f"结果:\n{result_kg:.4f} kg\n{result_lb:.4f} lb")
            
        except ValueError:
            messagebox.showerror("错误", "请输入有效的数字！")

    # 创建主窗口
    root = tk.Tk()
    root.title("重量转换器")
    root.geometry("300x250")

    # 界面组件
    tk.Label(root, text="输入数值:").pack(pady=5)
    entry_weight = tk.Entry(root)
    entry_weight.pack(pady=5)

    unit_var = tk.StringVar(value="kg")
    tk.Radiobutton(root, text="千克 (kg)", variable=unit_var, value="kg").pack()
    tk.Radiobutton(root, text="磅 (lb)", variable=unit_var, value="lb").pack()
    tk.Radiobutton(root, text="斤 (jin)", variable=unit_var, value="jin").pack()

    tk.Button(root, text="开始转换", command=calculate, bg="#4CAF50", fg="white").pack(pady=10)

    label_result = tk.Label(root, text="结果将显示在这里", fg="blue")
    label_result.pack(pady=5)

    root.mainloop()

if __name__ == "__main__":
    convert_weight_gui()