Qt自定義控件 開始 添加自定義屬性 訪問自定義屬性

自定義控件詳細教程請看:

      Qtcreator 添加自定義控件請看:https://blog.csdn.net/anyuliuxing/article/details/96604213

自定義控件屬性的添加:

1.定義屬性宏.

Q_PROPERTY(自定義屬性  READ 讀取自定義屬性函數 WRITE 設置自定義屬性函數)

2.聲明和定義 變量和函數.

(添加了宏和函數Qtcreator就會自己處理,把屬性顯示到編輯器右側屬性列表中)

示例代碼:

#ifndef TEMPCTRL_H
#define TEMPCTRL_H

#include <QWidget>

class TempCtrl : public QWidget
{
    Q_OBJECT

    Q_PROPERTY(int m_interval READ getInterval WRITE setInterval)

public:
    int     m_interval=1;
    int     getInterval();
    void    setInterval(int _interval);

    TempCtrl(QWidget *parent = 0);
};

#endif // TEMPCTRL_H

動態屬性的添加:

     展示圖中右側綠色加號!

自定義屬性動態屬性的訪問:

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    ui->label->setNum(ui->tempCtrl->m_interval);

    ui->label->setText(ui->tempCtrl->property("name").toString());

}

MainWindow::~MainWindow()
{
    delete ui;
}

效果展示:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章