参与了一个小游戏的设计:
原代码:self.label = tk.Label(master, text="请输入你的名字:") self.label.pack() self.name_entry = tk.Entry(master) self.name_entry.pack() self.start_button = tk.Button(master, text="开始游戏", command=self.start_adventure) self.start_button.pack() self.story_text = tk.Text(master, height=10, width=50, wrap=tk.WORD) self.story_text.pack() self.achievement_text = tk.Label(master, text="", relief=tk.SUNKEN, borderwidth=2) self.achievement_text.pack() # 添加保存和加载按钮 self.save_button = tk.Button(master, text="保存游戏", command=self.save_game) self.save_button.pack(pady=5) self.load_button = tk.Button(master, text="加载游戏", command=self.load_game) self.load_button.pack(pady=5)
改进后代码: 增加主题,字体及其风格, self.style = ttk.Style() self.style.theme_use("clam") # 主题,clam,其他主题还有'alt', 'default(默认) # 字体,Arial,Courier New,Georgia,Verdana,Tahoma self.font = ("Times New Roman", 12,"bold underline") #风格NORMAL,BOLD,ITALIC,UNDERLINE
def create_widgets(self): self.label = ttk.Label(self.master, text="请输入你的名字:") self.label.pack() self.name_entry = ttk.Entry(self.master) self.name_entry.pack() self.start_button = ttk.Button(self.master, text="开始游戏", command=self.start_adventure) self.start_button.pack() self.story_text = tk.Text(self.master, height=10, width=50, wrap=tk.WORD, font=self.font) self.story_text.pack() scrollbar = ttk.Scrollbar(self.master, command=self.story_text.yview) scrollbar.pack(side=tk.RIGHT, fill=tk.Y) self.story_text.config(yscrollcommand=scrollbar.set) self.achievement_text = ttk.Label(self.master, text="", relief=tk.SUNKEN, borderwidth=2, font=self.font) self.achievement_text.pack() self.save_button = ttk.Button(self.master, text="保存游戏", command=self.save_game) self.save_button.pack(pady=5) self.load_button = ttk.Button(self.master, text="加载游戏", command=self.load_game) self.load_button.pack(pady=5) 原:
改: