其中會使用到QVBox與QGrid的類別
其特性就是會自動安排加入其內部的子元件的位置
在版面的配置上還蠻好用的
class LCDRange : public QVBox
{
public:
LCDRange( QWidget *parent=0, const char *name=0 );
};
這裡宣告一個新的類別LCDRange,是由QVBox是一個容納元件,並沒有包含任何的API,在實作建構子時會再加入子視窗元件
class MyWidget : public QVBox
{
public:
MyWidget( QWidget *parent=0, const char *name=0 );
};
MyWidget也是除了一個構造函數之外沒有包含任何API
QGrid *grid = new QGrid( 4, this );
我們創建了一個四列的QGrid物件,意思是每填滿四個,會往下一行填新的元件。
這個QGrid窗口元件可以自動地把自己地子窗口部件排列到行列中,你可以指定行和列的數量,並且QGrid可以發現它的新子窗口元件並且把它們安放到Grid中。
for( int r = 0 ; r < 4 ; r++ )
for( int c = 0 ; c < 4 ; c++ )
(void)new LCDRange( grid );
因為Grid會自動安排子元件,所以,我們在生成LCDRange物件時,只要宣告其父視窗是Grid,則QGrid會幫我們自動安排位置
homework:
請參考C++ rand
在程式的部分則是把setValue放在connect之後才會有作用
沒有留言:
張貼留言