2017-08-04 16 views
-1
AANTAL = [(1,"1"),(2,"2"),(3,"3"),(4,"4"),(5,"5"),(6,"6"),] 
v= StringVar() 
v.set("1") 

for text, mode in AANTAL: 
but = Radiobutton(Main,padx=20, pady=10,font=('arial', 20, "bold"), bd=4, 
text=text, variable=v, value=mode, indicatoron=0) 
but.grid()  

上記のコードでは、1から6の番号のラジオボタンがいくつか表示されています。私はこれをどのように修正できるか知っていますか?pythonでラジオボタンを水平に配置する方法

私はすでにrow=0をグリッドコマンドに入れてみましたが、これはボタンを重ねる代わりに重ねて重ねるだけです。

+0

このような基本的な質問をする前に、 'grid'コマンドに関するドキュメントを読むべきです。 'grid'には、特定の行と特定の列を指定できるオプションがあります。 –

答えて

0

gridには、ウィジェットを配置するための2つのオプションがあります。 rowおよびcolumn。両方を指定する必要があります。

buttons = [] 
vars = [] 
for idx, (text, mode) in enumerate(AANTAL): 
    vars.append(StringVar(value="1")) 
    buttons.append(Radiobutton(Main,padx=20, pady=10,font=('arial', 20, "bold"), bd=4, text=text, variable=vars[-1], value=mode, indicatoron=0)) 
    buttons[-1].grid(row=0, column=idx) 

ウィジェットを作成するために、ループを使用しているとき、あなたのプログラムの後半でそれらにアクセスすることができますので、また、リストに保存することがはるかに優れています。

関連する問題