2013-02-16 2 views
1

나는 GTK + 3에 비교적 새로운 해요 (나는 PyGObject 사용)이 같은 구조가있는 사이드 바 만들어야합니다GTK + 3 (파이썬)에서 사이드 바를 만드는 법?

Header 1 
    Subheader 1 
    Subheader 2 

Header 2 
    Subheader 3 
    Subheader 4 

내가 무엇 예를 배울 수 있습니까? Gtk.TreeviewGtk.TreeModel (Gtk.Builder()을 사용하지 않음)을 사용하는 방법에 대한 최소한의 작동 예제를 보여줄 수 있습니까?

xml 파일과 Gtk.Builder()을 사용하는 것 외에도 레이아웃을 설명하는 것이 파이썬 파일의 구조를 만드는 것보다 뛰어나지 만 그렇게하기위한 문서는 훨씬 적습니다.

나의 현재 UI 설명 :

<?xml version="1.0" encoding="UTF-8"?> 
<interface> 
    <object class="GtkWindow" id="main-window"> 
     <property name="title">ApplicationName</property> 
     <signal name="delete-event" handler="onDeleteWindow"/> 
     <child> 
      <object class="GtkBox" id="container"> 
       <property name="orientation">horizontal</property> 
       <child> 
        <object class="GtkTreeView" id="sidebar"> 
        </object> 
       </child> 
       <child> 
        <object class="GtkBox" id="right-container"> 
         <property name="orientation">vertical</property> 
         <child> 
          <object class="GtkButtonBox" id="top-buttonbox"> 
           <child> 
            <object class="GtkButton" id="add-button"> 
             <property name="label">Add</property> 
            </object> 
           </child> 
           <child> 
            <object class="GtkButton" id="delete-button"> 
             <property name="label">Delete</property> 
            </object> 
           </child> 
          </object> 
         </child> 
        </object> 
       </child> 
      </object> 
     </child> 
    </object> 
</interface> 

답변

4

당신은 GtkTreeView 살펴 및 관련 트리와 같은 데이터 모델 GtkTreeStore이 있어야합니다. Python GTK+ 3.0 Tutorial은 좋은 소개입니다.

+0

나는 이것들을 이미 살펴 봤지만 xml 파일에서 그러한 메뉴를 만드는 방법을 알아낼 수 없다. 하나의 열을 만들어야합니까? "데이터"는 어떻게 삽입합니까? 내 XML 파일을 포함하도록 질문을 업데이트했습니다. –

+0

글 레이드도 시도했지만 사이드 바 제작을 할 수는 없습니다. –

+1

'GtkPaned'를 메인 컨테이너로 사용하고, 하나는 메인 UI를위한 패널이고, 다른 하나는'GtkTreeView'를위한 것입니다. 당신이 성취하고자하는 모습입니다. – asermax