Python中的Styin选项卡-使用tkinter的自定义gui

Python中的Styin选项卡-使用tkinter的自定义gui,python,user-interface,tabs,tkinter,Python,User Interface,Tabs,Tkinter,是否可以对Tkinter模块进行此级别的自定义 这些是Sublime文本编辑器的选项卡。我想用python创建这种选项卡,那么有可能吗??如果是,那么我应该如何使用另一个Python GUI库?我是Python新手,不知道如何完成这项工作。 我读过关于标签控制可以通过Tkinter的笔记本小部件实现的文章,但现在我很困惑它是否可能实现。请告诉我您可以通过Tkinter实现何种定制级别 编辑:Dupe:您希望使用哪种版本的Python,以及哪种平台 如果您不熟悉的话,可以使用一些术语:在Tk中,

是否可以对Tkinter模块进行此级别的自定义

这些是Sublime文本编辑器的选项卡。我想用python创建这种选项卡,那么有可能吗??如果是,那么我应该如何使用另一个Python GUI库?我是Python新手,不知道如何完成这项工作。 我读过关于标签控制可以通过Tkinter的笔记本小部件实现的文章,但现在我很困惑它是否可能实现。请告诉我您可以通过Tkinter实现何种定制级别


编辑:Dupe:

您希望使用哪种版本的Python,以及哪种平台

如果您不熟悉的话,可以使用一些术语:在Tk中,组成GUI的对象(框架、画布、按钮、文本框、标签等)都称为小部件

当Tk程序运行时,它基本上执行以下操作:

  • 创建一个框架(用于建立窗口的边框)
  • 将画布添加到框架(允许程序绘制控件) (框架内)
  • 创建代码以处理任何事件(可以 单击按钮、调整帧大小、选择菜单后执行 选项等)
  • 这是一个非常基本的例子:

    from Tkinter import *
    
        def clicked(): # code to handle the 
            print("Hey. Clicked.")
    
        if __name__ == "__main__":
            root = Tk() # initializes Tk
            button = Button(root, text="Click Me", command=clicked) # creates the button
            button.pack(pady=20, padx=20) # adds the button to the frame
            root.mainloop() # paint the frame and controls, user can click buttons, etc
    
    多年来,Tk经历了一些扩展。最初的Tk实现不支持笔记本小部件。但您确实有几个扩展可以:

    PMW(Python MegaWidget) PMW是John Grayson对Tk小部件的扩展。关于pmw.Notebook()的文档提供了一个很好的示例,在此不再重复

    您需要安装PMW才能运行该示例

    ttk(主题TK) ttk的概念与PMW类似——它是Tk小部件的扩展。我想这就是你在最初的帖子中提到的。这里有一个很好的Python 2.7笔记本小部件实现示例:

    ttk随Python2.7和3.4一起提供,因此除非您使用的是旧版本的Python,否则应该有可用的ttk

    wxPython wxPython是跨平台GUI工具包wx库的特定于Python的实现。wxPython也有一个笔记本小部件,但它是单独安装的,不使用Tk的任何库。我更喜欢wx,因为我发现代码更干净,但这是品味的问题。查看Mike Driscoll在其博客上的示例:

    如果您想了解更多关于wxPython的信息,您需要在下载平台的运行时。强烈建议您也下载Docs和Examples包,它为所有wxPython控件提供了一个很好的演示——包括源代码

    堆栈溢出 这里有几个案例涉及stackoverflow上的笔记本电脑控件:

    我推荐的GUI库是Tkinter。 Tkinter是一个非常易于使用的最新模块,预装了许多版本的python。我看到您使用的是Sublime文本,但要实现这一点,您不能使用Sublime文本编辑器,因为它不是预安装的。在成功安装Python(网站上有相关说明)后,可以从下载常规Python,然后打开名为IDLE的应用程序。打开IDLE后,转到File-newfile,您应该会得到一个新的黑屏来填充所有代码。在Python 2中,可以通过以下方式创建简单的GUI:

    from Tkinter import *
    #This code above will add Tkinter to your code
    root = Tk()
    #The code above says that the window we will open is called "root"
    root.title("Maq's GUI")
    #This code above says the title that will be displayed on the top of your window
    root.geometry("200x200")
    #The code above this is how big the GUI should be.
    root.mainloop()
    #The code above starts of all of our code.
    
    如果您使用的是Python3,那么就用小写T替换Tkinter中的大写T,就像在Python3中一样,它们“重命名”了许多模块,包括Tkinter。不要担心以#开头的代码行,因为它们什么都不做,它们只是帮助解释这段代码是什么。学习此功能后,您可以学习如何使用Tkinter模块执行许多其他操作。多亏了Python论坛的主持人Yorik,可以找到在线资源列表。就我个人而言,我从两个网站学会了使用Tkinter模块,我将在这篇文章的评论中附上这两个网站,我需要更多的声誉:P 我的答案基于Tkinter的主要原因是Tkinter几乎与所有版本的Python一起预装。它也是一个简单的GUI生成器,但它确实有一些不合适的地方,这是意料之中的

    TTK也是一个有用的小部件,它只是以Tkinter为主题。 TTK附带了Tkinter的11个小部件:按钮、检查按钮、条目、框架、标签、LabelFrame、菜单按钮、PanedWindow、Radiobutton、缩放和滚动条 TTK还附带了6个新部件:组合框、笔记本、进度条、分隔符、Sizegrip和Treeview

    TTK允许您将默认样式应用于其小部件:

    style = ttk.Style()
    style.configure("BW.TLabel", foreground="black", background="white")
    l1 = ttk.Label(text="Test", style="BW.TLabel")
    l2 = ttk.Label(text="Test", style="BW.TLabel")
    

    您可以添加许多样式,只需将它们设置为小部件的自定义样式。它对外表很有用。我将在说明中附加另一个URL。

    来自“Ttk Notebook widget管理一组窗口并一次显示一个窗口。每个子窗口都与一个选项卡关联,用户可以选择该选项卡来更改当前显示的窗口。”。你说“我是Python新手,不知道如何完成这项工作。”第一步是阅读文档,不是吗?你说的“像升华”具体是什么意思?颜色?正方形?右边的x?其中哪一个对你很重要?@BryanOakley颜色和形状:)这是两个链接:谢谢你的细节,但我想知道我能用TK创建像崇高一样的标签吗?如果是,那么如何:)好吧,我很困惑。Sublime是一个将代码放入的程序。Tkinter可能是您代码的结果。另外,我听说您需要有关笔记本小部件的信息。笔记本小部件附带TTK。笔记本可用于创建选项卡。此链接:在笔记本小部件上有相当数量的信息。TTK附带Python3,因此我推荐它。它是预安装的,只是通过以下代码导入:从tkinter import ttk可以在这里找到关于ttk的更多信息:感谢您提供的详细信息,我知道可以通过ttk实现选项卡,但我想知道我可以吗