2015-04-02 76 views
3

在我的應用程序中,我在頂部有一個樹形視圖,上面有一些與樹形視圖相關的按鈕。在這個下面我有一個表格視圖,同樣有一些與它相關的按鈕。我有一個QVBoxLayout頂部和底部。在佈局中使用QSplitter

請參閱屏幕顯示。

我想要做的就是能夠調整QPlitter允許你做的頂部和底部的大小。但是...... QSplitter只接受小部件,而不是佈局。

我希望能夠拖動屏幕截圖中紅色線條的位置。

我在C++中創建的佈局不在設計器中。

有沒有辦法做到這一點?

Layout showing where I'd like a splitter

回答

7

包裝你的小部件其他窗口裏面,像這樣:

Splitter 
├──Top Widget 
│ └──Layout 1 
│  ├──Button 1 
│  ├──Button 2 
│  └──Text Area 1 
└──Bottom Widget 
    └──Layout 2 
     ├──Button 3 
     ├──Button 4 
     └──Text Area 2 

例子:

QWidget *topWidget = new QWidget; 
topWidget->setLayout(layout1); 
... 
splitter->addWidget(topWidget); 
splitter->addWidget(bottomWidget); 
+1

最佳方案見過! – Tay2510 2015-04-02 10:17:50

+0

謝謝,svlasov。頂部小部件和底部小部件可能是什麼?只是一個QWidget?我如何將佈局添加到該小部件? – 2015-04-02 10:25:30

+0

只是一個普通的'QWidget'。 – svlasov 2015-04-02 10:26:32