我目前正在使用 Python 和 PySide 学习 QML。因此,我在 QML 中创建了一个自定义项目,它显示骰子面的图像,该骰子面具有显示 1 到 6 之间数字的属性。该部分有效,我希望能够在父级中实例化骰子几次QML文件
//Dice.qml
import QtQuick
import QtQuick.Layouts
Item {
property int num_dots
id: container
function getDots(num) {
var data;
switch (num) {
case 1:
data = ["white", "white", "white","white", "black", "white","white", "white", "white"];
break;
case 2:
data = ["black", "white", "white", "white","white", "white","white", "white", "black"];
break;
case 3:
data = ["black", "white", "white", "white","black", "white","white", "white", "black"];
break;
case 4:
data = ["black", "white", "black","white", "white", "white","black", "white", "black"];
break; …Run Code Online (Sandbox Code Playgroud) 当我将鼠标悬停在 qml 文本中的某些单词时,是否有某种方法可以显示提示?例如,我想查看我在文本中悬停的单词的定义。
*维基百科网站有此功能。
我收到整数格式的颜色值,例如十六进制值2232780#2211CC。如何将其转换unsigned integer为QString十六进制值,例如QString val = "#2211CC",以便我可以将其传递给我的 QML 项并将其与属性绑定color?
color: model.colorVal
Run Code Online (Sandbox Code Playgroud) 我得到了以下代码:
property real compassValue : 3.1415927895412
Text {
text: "<b>" + compassValue + "°</b>"
}
Run Code Online (Sandbox Code Playgroud)
事实是我只想显示"3.14".有没有办法截断这个值?
我正在我的项目中进行数据库操作.我有一个文件'dataBaseMaster',它有一个函数updateIntoTestResult().我通过设置这样的上下文创建了一个dbMasterObject
qml->setContextProperty("dbMasterObject", dbMasterObject);
但是当我尝试在main.qml中调用此updateIntoTestResult()方法时,我收到这样的错误
TypeError: Result of expression 'dbMasterObject.updateIntoTestResult' [undefined] is not a function
DatabaseMaster.hpp
class DatabaseMaster : public QObject
{
public:
Q_OBJECT
public:
void updateIntoTestResult(int id, int result);
};
Run Code Online (Sandbox Code Playgroud)
DatabaseMaster.cpp
void DatabaseMaster::updateIntoTestResult(int id, int result) {
QSqlDatabase database = QSqlDatabase::database();
QSqlQuery query(database);
query.prepare("update "+TEST_RESULT_MASTER+" set "+RESULT+" = :"+RESULT+" where "+TEST_ID+"= :"+TEST_ID+";");
query.bindValue(":"+RESULT, result);
query.bindValue(":"+TEST_ID, id);
query.exec();
Run Code Online (Sandbox Code Playgroud)
在main.qml中调用
dbMasterObject.updateIntoTestResult(MICROPHONE_ID, TEST_STATE_PASS)
Run Code Online (Sandbox Code Playgroud)
请帮帮我,为什么我得到这个错误,而我已正确宣布该方法.
提前致谢..!!
我正在尝试为Windows平台制作独立的应用程序.我搜索了我的应用程序所依赖的dll,将它们放在exe上,并且工作正常.
最近,在我的一个应用程序中,我看到所询问的依赖关系有点不同:
和一些更类似的..
常见的是,所有这些新的依赖项都是相同的旧依赖项,并附加了一个d.当我使用带有'd'的新的时,我的应用程序运行正常.问题是所有这些带有'd'的dll的大小几乎都比正常的db大100Mb.
例如:
Qt5Guid.dll~119 Mb
Qt5Gui.dll~4 Mb
这使我的包大小变大,可以作为一个应用程序.
Q1.普通dll和带有d后缀的对应物之间有什么区别.?
Q2.我可以做些什么来使我的应用程序明确依赖于正常的应用程序,因此我的应用程序的大小更小?
我是Qt和Qt/QML的新手,我正在尝试设置一个菜单栏,但它根本没有显示它.
我复制了粘贴代码,但仍然没有(来自Qt doc).
import QtQuick 2.0
import QtQuick.Controls 1.0
ApplicationWindow {
visible: true;
width: 1000;
height: 700;
title: "App";
MenuBar {
Menu {
title: "File"
MenuItem { text: "Open..." }
MenuItem { text: "Close" }
}
Menu {
title: "Edit"
MenuItem { text: "Cut" }
MenuItem { text: "Copy" }
MenuItem { text: "Paste" }
}
}
}
Run Code Online (Sandbox Code Playgroud) 我一直在研究这两种技术,用于使用Qt创建一个好看的桌面.然而,我认为人们谈论Qml是桌面应用程序的下一个重要因素,因为它为桌面应用程序提供了所有那些"好"的眼睛糖果效果.但另一方面,使用QtWebkit,我们可以带来相同的最先进的UI外观和感觉,我们在网络上.现在,我需要帮助为跨平台应用程序选择合适的技术,并且具有良好的外观UI.那么用html5的Qml或QtWebkit?
我正在使用momentics IDE(原生SDK)开发BlackBerry 10移动应用程序.
当我尝试构建项目并在设备上测试它(BlackBerry Dev alpha B)时,它会无缘无故崩溃并出现以下错误:
"启用了Qml调试.只能在安全的环境中使用它!"
我真的不知道它来自哪里,我在网上搜索了很多没有结果.拜托,有没有人对此有任何想法?