カスタムQToolButton

5100 ワード

最近インタフェースを作るにはツールバーボタンをたくさん追加する必要があるので、自分でButtonを定義しました.
ダイレクトコード
 SettingButton.cpp//Buttonのパラメータの設定
 1 #include "SettingButton.h"

 2 #include <QToolButton>

 3 #include <QSize>

 4 

 5 _DIYButton::_DIYButton(QWidget *_Parent) :

 6     QToolButton(_Parent)

 7 {

 8     setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);

 9     setToolButtonStyle(Qt::ToolButtonTextUnderIcon);

10     setAutoRaise(true);

11     setPopupMode(QToolButton::InstantPopup);

12     //setPopupMode(QToolButton::MenuButtonPopup);

13 }

14 

15 /* sizeHint()  */

16 QSize _DIYButton::sizeHint() const

17 {

18     QSize _NewSize = QToolButton::sizeHint();

19     /*

20     _NewSize.rheight() += 10;

21     _NewSize.rwidth() += 5;

22     */

23     _NewSize.setHeight(60);

24     _NewSize.setWidth(60);

25     return _NewSize;

26 }
 1 #ifndef SETTINGBUTTON_H

 2 #define SETTINGBUTTON_H

 3 

 4 #include <QToolButton>

 5 #include <QListWidget>

 6 class QSize;

 7 

 8 class _DIYButton : public QToolButton

 9 {

10     Q_OBJECT

11 public:

12     _DIYButton(QWidget *_Parent = 0);

13     

14 signals:

15     

16 public slots:

17 

18 protected:

19     QSize sizeHint() const;

20 };

21 

22 #endif // SETTINGBUTTON_H