2012-11-18 3 views
3

저는 pyGTK를 처음 사용합니다. 이제는 고정 된 레이아웃으로 메뉴 모음을 만들려고합니다. 그러나 전체 막대가 아닌 항목에 대한 배경 정보 만 얻습니다. 내 코드 :고정 된 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() 

답변

1

vbox 요청 크기를 지정해야합니다. 예 : vbox.set_size_request (300,50)을 추가하고 차이점을 확인하십시오. 올바른 크기가 아니지만 왜 gtk.Fixed을 사용하는지 모르겠습니다. 경우의 99.95 %에서 이 필요하지 않습니다. gtk.Fixed. 특히 GTK +를 처음 접했을 때 실제로는 그렇지 않을 때 필요할 것이라고 생각할 수도 있습니다.

+0

좋아, 그럼 내 위젯을 어떻게 레이아웃합니까? – Dirk