2017-11-17 1 views
1

他のウィジェットでは動作しますが、ボタンでは動作しません。Tkinter Buttonの境界を着色する方法はありませんか?

from Tkinter import * 
root = Tk() 
root.geometry("600x300+400+50") 

btn_up = Button(root, text='Go UP') 
btn_up.config(highlightbackground="red", highlightcolor="red", highlightthickness=10, relief=SOLID) 
btn_up.pack() 

root.mainloop() 

のPython 2.7 - Windowsの10

+0

これは間違っているのですか、それとも色付きの厚さになっていませんか? – Goralight

+0

ああ、間違って 'bd = 3'を残してしまいました。 –

+1

黒い枠線だけが表示され、エラーも色も表示されません。 –

答えて

2

私は、Linuxを使用していますが、私はあなたのコードを実行したとき、私は太い赤枠でボタンを取得し、それがデフォルトのWindowsのテーマはhighlightthicknessをサポートしていないことのように見えますデフォルトのlinuxテーマはそうです。

screenshot

あなたが境界線の色を変更したい場合は、それは貝 'のようないくつかのTTKのテーマを持つことも可能である:

from Tkinter import * 
import ttk 
root = Tk() 

style = ttk.Style(root) 
style.theme_use('clam') 
style.configure('my.TButton', bordercolor="red") 

ttk_button = ttk.Button(root, text='Go UP', style='my.TButton') 
ttk_button.pack() 

root.mainloop() 

screenshot clam

しかし、borderwidthを変え、style.configure('my.TButton', borderwidth=10)と期待どおり赤い枠線の幅を増加させません。

+0

python 3.xの場合は、 'Tkinter'を' tkinter'に、 'import ttk'を' from tkinter import ttk'に置き換えてください。 – Nae

関連する問題