问题标签 [qproperty]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
834 浏览

qt - Q_PROPERTY() RESET 子句如何工作?

当使用 Q_PROPERTY 宏定义 Qt 的属性系统的属性时,可用的子句之一是 RESET。我知道重置功能的用途以及如何创建它,但我不知道何时会从 QML 触发它。我注意到我在 BlackBerry Cascades 头文件中查看的重置函数声明示例未指定为 Q_INVOKABLE,因此您不能只调用该函数,但它们始终定义为插槽。这让我想知道当您使用带有 Q_PROPERTY 的 RESET 子句时,属性系统是否有一个隐藏的复位信号连接到复位函数槽。这样,当您的 QML 发生某些事件时,它会自动触发。这个事件可能是什么是我无法弄清楚的。

我一直在颠倒和横向浏览 Cascades 和 Qt 文档,我可以找到很多关于使用 RESET 子句以及必须如何声明重置函数的内容,但没有关于触发它的原因。

有人对此有任何见解吗?

0 投票
2 回答
632 浏览

qt - Object::property ( const char * name ) const 返回空 QVariant

我的班级有枚举属性,我希望使用QObject*. 调用时QVariant QObject::property ( const char * name ) const返回值为空QVariant的枚举类型。

考虑以下代码:

为什么属性返回空的 QVariant 值?字符串包装器属性可以正常工作。

0 投票
1 回答
2490 浏览

c++ - 将自定义小部件添加到 Qt Q_PROPERTY -- 或 -- CustomWidgetObjectNames 作为 qt 设计器自定义小部件中的属性

CustomWidgetObjectNames = 设计时对象。 在此处输入图像描述

0 投票
1 回答
12546 浏览

c++ - Qt中Q_PROPERTY的意义是什么?

我无法理解 Q_PROPERTY 的用法。Q_PROPERTY 如何帮助使程序具有防御性?这有什么用途?我看过论坛,但真的无法申请。我已经理解了这个例子,但不是它的用法。

这是示例,我从中获得了什么。我知道 read 将给予只读的特权。

write 属性将赋予只写权限。但它的需要是什么?有人可以举例说明吗?

0 投票
2 回答
669 浏览

c++ - Q_PROPERTY 无法正常工作

我正在级联开发一个 bb10 应用程序。这是头文件的片段

在我的 main.qml 中,我有一个 RadioGroup,我想根据指标值设置其 selectedIndex

但这似乎没有按预期工作。任何建议,将不胜感激。谢谢

0 投票
2 回答
1684 浏览

c++ - 如何为 QBrush 的颜色设置动画

我想为QBrush. 有关更多详细信息,请参见下面的代码

那是我的 .h 文件

那是我的 .cpp 文件

这就是动画:

但它不起作用,没有任何反应,刷子的颜色和以前一样。我应该怎么做才能修复它?

0 投票
0 回答
266 浏览

qt - QDataWidgetMapper 忽略继承

我有一个模型正在使用 QDataWidgetMapper 显示在一组小部件中。一个这样的字段是由选项 QStringList 填充的 QComboBox,但映射似乎不起作用。

QComboBox 的 user 属性是 currentText() 函数,没有对应的 setCurrentText() 函数用于编写,所以映射失败并出现警告Warning: QComboBox::setProperty: Property "currentText" invalid, read-only or does not exist

因此,我创建了一个简单的自定义 QComboBox,如下所示:

但我仍然得到相同的映射错误Warning: QComboBox::setProperty: Property "currentText" invalid, read-only or does not exist。我很确定我已经将我的小部件提升为 MappingComboBoxes,但 QDataWidgetMapper 似乎仍然使用默认的只读用户属性currentText而不是可写的自定义用户属性mappingText

我错过了什么吗?你不能覆盖继承类的用户属性吗?

编辑:我认识到这个问题在 Qt 5.3.1 中得到了修复,但我暂时停留在 Qt 4 中,所以我试图想出一个不涉及编辑源代码的解决方法。

0 投票
1 回答
234 浏览

qt - QML 地图绑定 v2

我在 Qt 中完全是菜鸟,所以我的问题可能听起来太愚蠢了,但我真的需要帮助。我知道一点 C++,就是这样。

所以,我的任务是编写一个读取类似 INI(格式不是很重要)文件的 C++ 程序

为了清楚起见,我不知道将在此文件中定义哪些属性,在编译时我不知道名称或类型。

在该程序加载 QML 文件(我可以这样做)并将加载的文件数据(不知道如何执行此操作)作为 JavaScript 对象注入之后,例如名为“设置”,以便 QML 属性绑定将使用它

所以问题是:如何将读取的数据作为 JavaScript 对象注入 QML,以便 QML 属性绑定使用它?

0 投票
1 回答
1526 浏览

qt - 自定义小部件的 QSS 属性:如何实现悬停和按下状态

我在网上找到了这个关于如何实现从 QSS 访问自定义 QWidget 的自定义属性的示例:https ://qt-project.org/wiki/Qt_Style_Sheets_and_Custom_Painting_Example

有谁知道如何实现小部件,以便我可以为悬停或按下状态提供不同的颜色?

当前样式表如下所示:

我希望能够拥有这样的东西:

注意:我知道可以使用特定于鼠标事件的 qproperties 来实现鼠标事件并更改颜色,例如:

但我希望能够使用原始的 qss/css 方式使其工作。

问候!

0 投票
0 回答
243 浏览

qt - Q_PROPERTY 在 Linux 发行版中无法正常工作

我正在开发一个时钟应用程序,我需要使用 Q_PROPERTY 来完成它。这个想法是使用 C++ 制作所有时钟控制逻辑并将其部署在 QML GUI 中。我在 Windows 机器上运行它,但是当我在开发板上的 linux 发行版上运行它时,有时会得到未定义的文本(这是 C++ 的公开属性)。

头文件是:

.cpp 文件:

实例化clockctrl对象的主文件是:

使用公开属性的 QML 文件是:

正如您所看到的,这是一个简短而简单的代码,当我尝试引用 C++ 公开的属性时,问题出在 QML 中,我添加了几个控制台以便在日志中查看结果,它就像一个魅力windows,我从来没有得到这些“未定义的文本”,但在带有 linux 发行版的开发板上,我有时会得到:

qml:QcppClock(0×7e8eeca8)1 49 qml:QcppClock(0×7e8eeca8)未定义未定义qml:QcppClock(0×7e8eeca8)1 49

第一个调试是 C++ 中 c++ 公开对象的地址,然后是 Q_PROPERTY“小时”和 Q_PROPERTY“分钟”。

先感谢您。

拉姆塞斯