热门标签:
Q:

在tabcontrol中,如何将图标和文本应用于它周围的空间中心和边距?

一个可能对许多未来读者有用的问题。 在问题中,我把我的代码(正常工作),这是照片中右侧tabcontrol的代码。 我的tabcontrol有文本和图标的问题。 在这里输入图像描述本网站下载示例图标(48x48),因为在我的代码中,我将图标路径的行留空

基本上我想获得等于第一个图像的结果

注意:我注意到,如果我写一个简短的文本,图标转到左边。 另一方面,如果我写了一个长文本,那么图标居中。

我的代码是:

import tkinter as tk
from tkinter import ttk
from PIL import ImageTk

root = tk.Tk()
root.geometry('480x320')

topbar = tk.Frame(root, bg='#e10a0a', height=43)
topbar.pack(fill='x')

style = ttk.Style()
style.theme_use('default')
style.configure('Custom.TNotebook', tabposition='wn', background='#e10a0a', tabmargins=0)
style.configure('Custom.TNotebook.Tab', background='#d10000', width=25, focuscolor='#e10a0a', foreground='white', borderwidth=1)
style.map('Custom.TNotebook.Tab', background=[('selected', '#960000')])

nb = ttk.Notebook(root,style='Custom.TNotebook')
nb.pack(fill='both', expand=1)

class Page1(tk.Frame):
    def __init__(self, master, **kw):
        super().__init__(master, **kw)

        self.configure(bg='white')

class Page2(tk.Frame):
    def __init__(self, master, **kw):
        super().__init__(master, **kw)

        self.configure(bg='white')
  
page1 = Page1(nb)
page2 = Page2(nb)

#img = ImageTk.PhotoImage(file='icon.png')
nb.add(page1, text='A', compound='top')# image=img
nb.add(page2, text='CCCCCCCCCCCCCCCC', compound='top')# image=img
原网址

相似问题