2017-11-08 10 views
0

オプションメニューからいくつかの項目を選択して、選択するオプションがあります。私はメニューとメニューボタンウィジェットについて知っていますが、これらは私を助けません。オプションメニューを使用する必要がありますtkinter pythonの別のオプションメニューの中にoptionmenuを置くことが可能です

+1

なぜメニューとmenubuttonsはあなたを助けませんか?それはオプションメニューであることがすべてです。それは文字通りメニューボタンとメニュー、そしてちょっとしたコードです。なぜあなたはオプションメニューを使用していますか? –

+0

私はoptionmenu(約40)のリストを持っており、ボタンでそれらの値を取る。また、私はオプションメニューのように、それぞれの選択を見ることができるようにしたい。それはmenubuttonで可能ですか? – dimt172z

+0

はい、それはmenubuttonで可能です。私が言ったように、optionmenuは添付メニュー付きのメニューボタンです。 –

答えて

1

オプションメニューは文字通り単なるメニューボタンであり、構文的な砂糖が少しあります。

ここであなただけのオプションメニューのように見える何かにサブメニューを持つことができる方法を示す簡単な例です:あなたは、ユーザーがそれぞれのサブメニューから別の値を選択できるようにしたい場合は

import tkinter as tk 

root = tk.Tk() 
var = tk.StringVar(value="one") 
menubutton = tk.Menubutton(root, textvariable=var, indicatoron=True, 
          borderwidth=1, relief="raised", width=20) 
main_menu = tk.Menu(menubutton, tearoff=False) 
menubutton.configure(menu=main_menu) 

for item in (("Numbers", "one", "two", "three"), 
      ("Colors", "red", "green", "blue") 
): 
    menu = tk.Menu(main_menu, tearoff=False) 
    main_menu.add_cascade(label=item[0], menu=menu) 
    for value in item[1:]: 
     menu.add_radiobutton(value=value, label=value, variable=var) 

menubutton.pack(side="top", padx=20, pady=20) 

root.mainloop() 

メニューごとに新しいStringVarを作成することができます。しかし、ボタンのラベルを自分で更新するコードを書く必要があります。

+0

ありがとうございました!それはまさに私が望んでいたものです! – dimt172z

関連する問題