QtApplets-自定义控件-6-属性研究(未成功)

简介: QtApplets-自定义控件-6-属性研究(未成功)

image.pngQtApplets-自定义控件-6-属性研究

接上篇,我们最后的那个升华了的小问题,如何使用自定义的数据类型作为我们自定义控件的属性呢。看帮助文档是支持的,但是要什么样子的自定义数据类型,这里没有写呀。这里我没有搞定,后面的内容不用看了。


The property name and type and the READ function are required. The type can be any type supported by QVariant, or it can be a user-defined type. The other items are optional, but a WRITE function is common. The attributes default to true except USER, which defaults to false.

For example:


Q_PROPERTY(QString title READ title WRITE setTitle USER true)


For more details about how to use this macro, and a more detailed example of its use, see the discussion on Qt’s Property System.

See also Qt’s Property System.


文章目录


QtApplets-自定义控件-6-属性研究

目前状态

提升一下,给用户来个选择咋样?

☞ 源码

关键字: Q_PROPERTY、属性、自定义、设置、获取


目前状态


目前状态呢,我已经实现一个自定义的类,代码如下


testrect.h

#ifndef TESTRECT_H
#define TESTRECT_H
#include <QObject>
#include <QSharedDataPointer>
#include <QWidget>
class TestRectData;
class TestRect : public QWidget
{
    Q_OBJECT
    Q_PROPERTY(int testX READ getTestX WRITE setTestX)
public:
    explicit TestRect(QWidget *parent = nullptr);
    TestRect(const TestRect &);
    TestRect &operator=(const TestRect &);
    ~TestRect();
    int getTestX();
    void setTestX(int temp);
signals:
private:
    QSharedDataPointer<TestRectData> data;
private:
    int mTestX = 0;
};
#endif // TESTRECT_H

testrect.cpp


#include "testrect.h"
class TestRectData : public QSharedData
{
public:
};
TestRect::TestRect(QWidget *parent) : QWidget(parent), data(new TestRectData)
{
}
TestRect::TestRect(const TestRect &rhs) : data(rhs.data)
{
}
TestRect &TestRect::operator=(const TestRect &rhs)
{
    if (this != &rhs)
        data.operator=(rhs.data);
    return *this;
}
TestRect::~TestRect()
{
}
int TestRect::getTestX()
{
    return mTestX;
}
void TestRect::setTestX(int temp)
{
}

image.pngimage.pngimage.pngimage.pngimage.png

目录
相关文章
|
存储 并行计算 安全
【Qt 线程】探索Qt线程编程的奥秘:多角度深入剖析(二)
【Qt 线程】探索Qt线程编程的奥秘:多角度深入剖析
518 0
|
Linux iOS开发 UED
探索Qt折线图之美:一次详尽的多角度解析
探索Qt折线图之美:一次详尽的多角度解析
1784 0
|
11月前
|
机器学习/深度学习 弹性计算 自然语言处理
前端大模型应用笔记(二):最新llama3.2小参数版本1B的古董机测试 - 支持128K上下文,表现优异,和移动端更配
llama3.1支持128K上下文,6万字+输入,适用于多种场景。模型能力超出预期,但处理中文时需加中英翻译。测试显示,其英文支持较好,中文则需改进。llama3.2 1B参数量小,适合移动端和资源受限环境,可在阿里云2vCPU和4G ECS上运行。
517 1
Qt6学习笔记五(自定义对话框、QMessageBox、QColorDialog、QFileDialog、QFontDialog)
Qt6学习笔记五(自定义对话框、QMessageBox、QColorDialog、QFileDialog、QFontDialog)
671 0
|
NoSQL 应用服务中间件 Redis
Docker跨宿主机容器通信-通过网络跨宿主机互联
这篇文章介绍了Docker容器跨宿主机通信的实现方法,包括Docker的四种网络模式(host、none、container、bridge)以及如何通过修改网络配置和添加路由规则来实现不同宿主机上的容器之间的互联。
1075 0
Docker跨宿主机容器通信-通过网络跨宿主机互联
|
Kubernetes 安全 网络安全
Docker不同宿主机网络打通
【8月更文挑战第18天】在Docker中实现不同宿主机间的网络互联有多种方法:1) 使用Docker原生的Overlay与Macvlan网络。Overlay网络让容器跨主机通信,通过简单配置即可搭建;Macvlan则允许容器直接接入物理网络,实现高效通信。2) 利用第三方插件如Flannel和Calico,它们不仅支持跨主机网络,还提供高级特性如网络策略管理。无论选用哪种方案,均需确保宿主机间网络通畅,并适当配置防火墙以保障容器间的顺畅通信。
641 0
无法将参数1从“const char [6]”转换为“char *”的解决方法
无法将参数1从“const char [6]”转换为“char *”的解决方法
|
数据可视化
QChart多个图布局使坐标轴对齐的方法
QChart多个图布局使坐标轴对齐的方法
472 0
|
开发工具 C++
[MFC] 调用相机采集图像(Halcon)
[MFC] 调用相机采集图像(Halcon)
521 0
|
芯片
[相机配置] 海康相机丢包配置环境
[相机配置] 海康相机丢包配置环境
933 0