2014-04-29 12 views
5

Tôi đang cố gắng tạo một ứng dụng tkinter không giống ứng dụng tkinter. Tôi đang sử dụng Máy tính xách tay ttk và các tab có đường chấm nhỏ này xung quanh văn bản khi chúng được chọn. Nó trông khủng khiếp, và tôi không thể tìm thấy một cách để loại bỏ nó bằng cách sử dụng hoặc phong cách hoặc cấu hình. Dưới đây là một ảnh chụp màn hình để làm rõ:Xóa Thẻ Máy tính xách tay Ttk Dashed Line

enter image description here

Chỉnh sửa mã (Tôi không nghĩ rằng nó sẽ được terribly hữu ích, vì tôi đang thực sự chỉ cố gắng để loại bỏ một điều phong cách mặc định.):

đây là việc tạo ra máy tính xách tay:

tabs = ttk.Notebook(mainframe, width=319, height=210, style=style.Notebook) 
tabs.grid(column=0, row=1, sticky=('n', 'w', 'e', 's')) 
tabs.columnconfigure(0, weight=1) 
tabs.rowconfigure(0, weight=1) 

Điền nó trong:

tab1 = ttk.Frame(tabs) 
tab1_frame = ttk.Frame(tab1, style=style.Frame) 
tab1_frame.pack(anchor='center', expand=1, fill='both') 
# stick some widgets in 
progress = ttk.Progressbar(tab1_frame, orient="horizontal", length=300, mode="determinate") 
progress.grid(column=1, row=1, columnspan=2, padx=style.padding, pady=style.padding) 
progress['maximum'] = 1000 
progress['value'] = 500 
# More widgets 
# Another tab 
tab2 = ttk.Frame(tabs) 
tab2_frame = ttk.Frame(tab2, style=style.Frame) 
tab2_frame.pack(anchor='center', expand=1, fill='both') 
# blah blah 

Kiểu có liên quan:

style_config = Style() 
style_config.theme_use('default') 

style_config.configure(self.Notebook, 
    background=self.dark, 
    borderwidth=0) 

style_config.configure(self.Tab, 
    background=self.dark, 
    foreground='white', 
    padding=self.padding, 
    borderwidth=0) 
style_config.map(self.Tab, 
    background=[('selected', self.color1)]) 
+0

một số mã sẽ giúp tôi giúp bạn –

+0

tôi không biết nếu nó sẽ, vì đây là mặc định tất cả các chủ đề (tôi đang sử dụng mặc định) và tôi đang cố gắng xóa nó. Tôi sẽ cập nhật câu trả lời của tôi mặc dù. – jstaab

Trả lời

5

Bạn có thể xóa dấu tiêu điểm này bằng cách thay đổi các phần tử phụ của tiện ích tab. Các tiện ích Ttk được phân tách trong subelements. Bố cục của các phần tử này được mô tả qua phương pháp layout (hoặc trong thông số bố cục của theme_create). Đây là một lệnh để loại bỏ các vết bố trí (bạn có thể áp dụng nó trực tiếp đến Tab, hoặc bất kỳ chủ đề có nguồn gốc khác), phần nhận xét là những gì dẫn trước để vẽ trọng tâm (lấy qua style.layout("Tab"))

style.layout("Tab", 
[('Notebook.tab', {'sticky': 'nswe', 'children': 
    [('Notebook.padding', {'side': 'top', 'sticky': 'nswe', 'children': 
     #[('Notebook.focus', {'side': 'top', 'sticky': 'nswe', 'children': 
      [('Notebook.label', {'side': 'top', 'sticky': ''})], 
     #})], 
    })], 
})] 
) 

Một hacky hơn cách có thể để thay đổi màu sắc của dấu ấn tập trung này, ví dụ để vẽ nó cùng màu với nền

style.configure("Tab", focuscolor=style.configure(".")["background"]) 
+0

Tuyệt vời; Tôi sẽ cố gắng này ra ngày hôm nay và xem nó hoạt động như thế nào! – jstaab

+0

Xin chào! Nó đã làm việc! Cảm ơn! – jstaab

Các vấn đề liên quan