import tkinter as tk import webbrowser from tkinter import ttk from picktrue import version from picktrue.gui.downloader import downloaders from picktrue.gui.toolkit import info class App(tk.Tk): def __init__(self, *args, **kwargs): super(App, self).__init__(*args, **kwargs) self.tabs = ttk.Notebook(self) self.title("PickTrue - 相册下载器 v%s" % version.__version__) self.build_menu() for downloader in downloaders: self.tabs.add(downloader(self), text=downloader.title) self.tabs.pack( side=tk.LEFT, ) @staticmethod def open_online_help(): url = 'https://github.com/winkidney/PickTrue' webbrowser.open_new_tab(url) @staticmethod def show_about(): webbrowser.open_new_tab( 'https://winkidney.com' ) @staticmethod def contact(): info( "任何问题或者建议请联系作者\n" "用户QQ群: 863404640\n" ) def build_menu(self): menu_bar = tk.Menu(self) help_menu = tk.Menu(menu_bar) help_menu.add_command(label="在线帮助", command=self.open_online_help) help_menu.add_command(label="关于", command=self.show_about) help_menu.add_command(label="联系作者/用户群", command=self.contact) menu_bar.add_cascade(label="帮助", menu=help_menu) self.config(menu=menu_bar) def main(): app = App() app.mainloop() if __name__ == "__main__": main()