
利用布局,widget和ScrollArea實作的抽屜效果如下:

思路就是將scrollArea設定為垂直布局,然后加入按鈕和widget,當滑鼠點擊按鈕后,隱藏widget,利用垂直布局,做到自然伸縮,然后為什么要使用scrollArea做容器,因為scrollArea可以實作當容器空間不足,出現進度條進行串列滑動,下面一步一步來實作,
首先拖拽一個scrollArea,并拖拽幾個按鈕和widget放進scrollArea,并將scrollArea設定為垂直布局

為按鈕添加槽,當按鈕被點擊時,widget執行setVisible(false)函式,widget被隱藏,利用布局自動排列,可以看到widget好像被合起,
bool iswiedet_1=true;
void MainWindow::on_pushButton_5_clicked()
{
if(iswiedet_1==true)
{
ui->widget_2->setVisible(false);
iswiedet_1=false;
return;
}
ui->widget_2->setVisible(true);
iswiedet_1=true;
}
到此就,就實作了如下效果:

現在,我們就可以在對應的widget添加我們需要的控制元件,但是目前還缺少一種東西,就是當串列鋪滿表單,自動出現滑動條,ScrollArea可以幫助我們,將以上控制元件拖到ScrollArea里面,并將ScrollArea設定垂直布局,并將widgetResizable打勾,這樣就是實作完整的抽屜效果,

CSDN認證博客專家
Qt
C
C++
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/157368.html
標籤:其他
