2017-03-02 2 views
0

私は2つのボックスのコンテナを横に並べ、1つはサイドバーで、もう1つはテキストビューでなければなりません。サイドバーはテキストビューより大きくなり、ウィンドウのサイズを変更するとサイズが変更され、テキストビューを引き継ぎます。これを修正するにはどうすればよいですか? The program I'm trying to make. Look at the dominant size of the sidebar at left.非展開のGtk + 3ツリービューのようなインターフェースのためのPythonのサイドバー

テキストビュー( "textview")とサイドバー( "editview")を作成するために使用するコードです。 これは私のコードの一部です!

def __init__(self): 
    Gtk.Window.__init__(self, title="Translator") 

    self.box = Gtk.Box(spacing=0) 
    self.add(self.box) 

    self.box_editview = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=0, expand=False) 
    self.box.pack_start(self.box_editview, True, True, 0) 

    vseparator = Gtk.Separator(orientation=Gtk.Orientation.VERTICAL) 
    self.box.pack_start(vseparator, False, False, 0) 

    self.box_textview = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=0) 
    self.box.pack_start(self.box_textview, True, True, 0) 

    self.css_styling() 
    self.create_textview() 
    self.create_editview() 

def create_editview(self): 
    self.palette1 = Gtk.Expander() 
    self.palette1.set_spacing(6) 
    self.palette1.set_label('Main') 
    self.palette1.set_size_request(100,400) 

    self.box_editview.pack_start(self.palette1, False, False, 0) 

    grid = Gtk.Grid() 
    label = Gtk.Label(" font ") 
    button = Gtk.Button.new_with_label("some very cool font") 
    grid.add(label) 
    grid.add(button) 
    self.palette1.add(grid) 

def create_textview(self): 
    scrolledwindow1 = Gtk.ScrolledWindow() 
    scrolledwindow1.set_hexpand(True) 
    scrolledwindow1.set_vexpand(True) 
    self.box_textview.pack_start(scrolledwindow1, True, True, 0) 

    self.textview = Gtk.TextView() 
    self.textview.set_wrap_mode(Gtk.WrapMode.WORD) 
    self.textbuffer = self.textview.get_buffer() 
    self.textbuffer.set_text("text") 
    scrolledwindow1.add(self.textview) 
+0

がGtkPanedに見て。 – andlabs

+0

私はGtkPanedを見ましたが、ファイルマネージャのように、サイドバーのサイズをユーザーが拡大できるようにしたくありません。とにかく、今のところ私はそれを結びつけるつもりです... – user258456

+0

サイドバーボックスに 'width_request'を設定しようとしましたか? – theGtknerd

答えて

0

あなたは試みることができる:

self.box_editview = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=0, width_request=200) 
self.box.pack_start(self.box_editview, False, False, 0) 
関連する問題