自定义QToolButton
最近做界面需要添加很多工具栏按钮,所以自己定义了一个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