在Qt中的QGridLayout網格布局類中,有許多基類自帶的函數,在這里,我主要介紹一下其中的一個函數,addWidget函數,在我的仿真實驗中,運用到了這個函數,這個函數的兩種不同的功能都被我使用到了,故在這里進行介紹。
addWidget第一種功能:
void QGridLayout::addWidget(QWidget *widget, int row, int column, Qt::Alignment alignment = Qt::Alignment())
這是這個函數的第一種功能,第一個參數是自己設定的小部件,可以是QLabel標簽,可以是QPushButton按鈕,可以使QLineEdit行編輯器等等任意小部件,第二第三個參數是該小部件在網格布局中的坐標,第四個參數是對齊方式,一般可以不設定,作為默認值。
addWidget第二種功能:
void QGridLayout::addWidget(QWidget *widget, int fromRow, int fromColumn, int rowSpan, int columnSpan, Qt::Alignment alignment = Qt::Alignment())
這里中間的參數不相同,在這里的第二第三個參數,代表的是小部件的起點的行列值,第四第五個參數是這個小部件所占據的行列大小,其余第一個和最后一個函數與上述相同。
這里我們來看一下我寫的一個小程序:
//界面搭建 QGridLayout *gridLayout = new QGridLayout; gridLayout->addWidget(fileNamelabel,0,0); gridLayout->addWidget(fileNamelineEdit,0,1); gridLayout->addWidget(fileBtn,0,2); gridLayout->addWidget(sizeLabel,1,0); gridLayout->addWidget(sizeLineEdit,1,1,1,2); gridLayout->addWidget(createTimeLabel,2,0); gridLayout->addWidget(createTimeLineEdit,2,1,1,2); gridLayout->addWidget(lastModifiedLabel,3,0); gridLayout->addWidget(lastModifiedLineEdit,3,1,1,2); gridLayout->addWidget(lastReadLabel,4,0); gridLayout->addWidget(lastReadLineEdit,4,1,1,2);
這里的程序,就用到了上述的addWidget函數,一部分用的是第一個函數功能,另一部分,使用的是另外一個功能,來實現我所要的布局功能。
最后的仿真結果界面如圖:
以上,給大家借鑒,各位加油。