2017-01-11 17 views
0

私はtkinterボタンを持っていますが何らかの理由で幅= xxを受け取りますが、高さ= xxを受け付けません 私はpython3.5を使用しています、tkinterサポートはデフォルトでubuntu 16.04tkinterボタンは高さパラメータを受け付けません

Traceback (most recent call last): 
    File "pygo.py", line 44, in <module> 
    app = App() 
    File "pygo.py", line 34, in __init__ 
    button_enter.config(height=15, width=25) 
    File "/usr/lib/python3.5/tkinter/__init__.py", line 1333, in configure 
    return self._configure('configure', cnf, kw) 
    File "/usr/lib/python3.5/tkinter/__init__.py", line 1324, in _configure 
    self.tk.call(_flatten((self._w, cmd)) + self._options(cnf)) 
_tkinter.TclError: unknown option "-height" 

動作するようにすることができる。

# works: button_enter = ttk.Button(self.frm, text='ok', width = 100) 
# works: button_enter.config(width=25) 
# fails: button_enter = ttk.Button(self.frm, text='ok', height=15, width = 25) 
# fails: button_enter.config(width=25, height=15) 
button_enter = ttk.Button(self.frm, text='ok') 
button_enter.config(width=25) 
button_enter['command'] = self.some_method 
button_enter.grid(column=2, row = 0, sticky=W) 

ここで私が取得していますエラーがあります: ここでのサンプルコードは?それともバグかどこに報告すればいいですか?

答えて

1

これはバグではなく、ttkボタンの仕組みです。高度に構成可能なボタンが必要な場合は、tkinterボタンを使用します。 ttkボタンは目的に応じて構成することができません。 ttkウィジェットの目的は、特定のテーマと一貫したボタンのセットを提供することです。

Linuxシステムにしているので、それはheightオプション未満便利だけれども、あなたは、packplaceまたは適切なオプションをgridと高さに影響を与えることができます。

+0

答えに感謝しますが、私はtkinterボタンをあまり醜くしません。 – freeaks

+0

@freeaks:あまりにも醜いボタンが欲しいなら、ttkボタンを使い、人工的に背の高いものにしようとしないでください。あるいは、私が言ったように、 'pack'、' place'、 'grid'の適切なオプションを使用して、それらの背を高くしてみてください。これは通常、WindowsやOSXのttkボタンには影響しません。そのプラットフォームには、ネイティブボタンの表示方法に関する厳しいガイドラインがあるからです。 –

+0

フレームにパックしてフレームのサイズを設定すると、ttkボタンを大きくすることができます。 – patthoyts

0

メソッドをGrid()またはPack()またはConfig()の代わりに使用してください。それは正常に動作します。私は決して使用しませんでしたConfig()方法

関連する問題