0
我使用python編寫GTK 3.4(使用GObject內省)。 我不明白爲什麼在cb2函數中創建的菜單沒有顯示,或者有時閃爍和消失,而單擊bc1時工作正常。gtk 3彈出式菜單
在用戶點擊按鈕之前,程序並不知道要放在菜單上的所有項目。 任何想法?
#!/usr/bin/python
from gi.repository import Gtk
def create_menu():
m = Gtk.Menu()
item = Gtk.MenuItem(u"piano")
m.append(item)
m.show_all()
return m
menu1 = create_menu()
def cb1(widget):
menu1.popup(None, None, None, None, 0, 0)
return True
def cb2(widget):
menu2 = create_menu()
menu2.popup(None, None, None, None, 0, 0)
return True
w = Gtk.Window()
grid = Gtk.Grid()
w.add(grid)
b1 = Gtk.Button("cb1")
grid.add(b1)
b1.connect('clicked', cb1)
b2 = Gtk.Button("cb2")
grid.add(b2)
b2.connect('clicked', cb2)
w.connect('destroy', Gtk.main_quit)
w.show_all()
Gtk.main()
你得到任何錯誤或運行時警告在終端上應用? – drahnr