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;
}

效果展示:

 

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