3

私はpyGTKが初めてで、固定レイアウトのメニューバーを作成しようとしていますが、バー全体ではなく、アイテムの背景のみを取得しています。私のコード:

import gtk

class App(gtk.Window):
    def __init__(self):
        super(App,self).__init__()
        self.set_size_request(640,480)
        self.set_position(gtk.WIN_POS_CENTER)

        menubar = gtk.MenuBar()

        menu_file= gtk.Menu()
        menuitem_file = gtk.MenuItem("File")
        menuitem_file.set_submenu(menu_file)

        menuitem_exit = gtk.MenuItem("Exit")
        menuitem_exit.connect("activate",gtk.main_quit)
        menu_file.append(menuitem_exit)

        menubar.append(menuitem_file)

        fixed = gtk.Fixed()

        vbox = gtk.VBox(False, 2)
        vbox.pack_start(menubar, False, False, 0)

        fixed.add(vbox)

        self.add(fixed)

        self.connect("destroy",gtk.main_quit)
        self.show_all()

App ()
gtk.main ()
4

1 に答える 1

1

vboxリクエストサイズを作成する必要があります。たとえば、追加vbox.set_size_request (300,50)して違いを確認してください。正しいサイズではありませんが、なぜ使用するのかまったくわかりませんgtk.Fixed。99.95% の場合、必要ありませんgtk.Fixed。特に、GTK+ を初めて使用する場合は、実際には必要ないのに必要だと思うかもしれません。

于 2012-11-18T19:45:01.223 に答える