0422 網課P30 02自定義控件
項目名稱-添加新文件-qt-設計師界面類(生成.h .cpp .ui)
ui中設計自己需要的功能(這裏我設計了SSpinBox和Slider兩個控件)
widget中使用自定義控件,拖拽一個widget,點擊提升爲,點擊添加,點擊提升
在Widget的ui中,使用剛纔的自定義控件,選擇一個widget,右鍵選擇提升爲:
提升完,右側的類名會更改
好我們的控件已經自定義成功,現在給自動逸控件添加功能就好,添加信號和槽函數
實現功能,改變數字,滑動條跟着移動(信號槽的監聽)
代碼:
SmallWidget::SmallWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::SmallWidget)
{
ui->setupUi(this);
//QSpinBox移動 QSlider跟着移動
void(QSpinBox:: *spSignal)(int) =&QSpinBox::valueChanged;
//connect(ui->spinBox,spSignal,ui->horizontalSlider,&QSlider::setValue);
connect(ui->spinBox,spSignal,ui->horizontalSlider,ui->horizontalSlider->setValue);
//QSlider移動,QSpinBox跟着移動
connect(ui->horizontalSlider,&QSlider::valueChanged,ui->spinBox,&QSpinBox::setValue);
}
效果展示:點擊按鈕,滑動條移動;移動滑動條,按鈕數字改變