我想在QML中实现以下场景.
这是ListView
元素的示例/简化委托:
Component {
Item {
id: container
MouseArea {
anchors.fill: parent
hoverEnabled: true
onClicked: {
container.ListView.view.currentIndex = index
container.forceActiveFocus();
}
onEntered: {
actionList.state = "SHOW";
myItem.state = "HOVER"
}
onExited: {
actionList.state = "HIDE";
myItem.state = "NORMAL"
}
Rectangle {
id: myItem
color: "gray"
anchors.fill: parent
Row {
id: actionList
spacing: 5; anchors.fill: parent
Image {
id: helpAction
source: "" //Some image address
width: 16; height: 16; fillMode: Image.PreserveAspectFit
states: [
State {
name: "NORMAL"
PropertyChanges { …
Run Code Online (Sandbox Code Playgroud) 我是Qt的新手,我正在寻找Qt中的多线程.
正如我在Qt Documents中所学到的,我为两个线程定义了两个类:
#include <QThread>
#include <QMutex>
class thread_a : public QThread
{
Q_OBJECT
public:
explicit thread_a(QObject *parent = 0);
int counter;
protected:
void run();
};
Run Code Online (Sandbox Code Playgroud)
并在CPP文件中:
#include "thread_a.h"
thread_a::thread_a(QObject *parent) :
QThread(parent)
{
counter=0;
}
void thread_a::run()
{
counter++;
}
Run Code Online (Sandbox Code Playgroud)
第二个线程类是相同的,但counter--
在run()
方法中.
然后我运行这两个线程main.ccp
.
现在我的问题:
我如何可以共享counter
的thread_a
和thread_b
使用QMutex
?
如何Rectangle
在QtQuick 2.0上为可视项目绘制阴影?
我喜欢为我的主窗口画一个阴影(我有一个透明且没有装饰的窗口)
我main.qml
和dynamic.qml
我要加载的文件dynamic.qml
上main.qml
使用Loader {}
.文件
内容dynamic.qml
是动态的,另一个程序可能会更改其内容并覆盖它.所以我写了一些C++代码来检测文件的变化并触发Signal.
我的问题是我不知道如何强制Loader重新加载文件.
这是我目前的工作:
MainController {
id: mainController
onInstallationHelpChanged: {
helpLoader.source = "";
helpLoader.source = "../dynamic.qml";
}
}
Loader {
id: helpLoader
anchors.fill: parent
anchors.margins: 60
source: "../dynamic.qml"
}
Run Code Online (Sandbox Code Playgroud)
我认为QML引擎缓存dynamic.qml
文件.因此,每当我想重新加载Loader时,它都会显示旧内容.有什么建议吗?
我想为QML实现滚动动画ListView
.这是一个示例图像:
任何人都可以建议我实施这个吗?
谢谢.
如何在QtQuick应用程序中应用MVVM模式?
任何人都可以给我任何样本(简单)代码吗?
谢谢
我正在使用Mac OS X中的QtCreator开发一个应用程序,它必须是跨平台的.
我有一台Mac OS X作为主机.此外,我在虚拟机上安装了MS Windows,在另一个虚拟机上安装了Ubuntu:
如何在Mac OS中开发我的应用程序并在其他平台(Mac/Windows/Ubuntu)中同时构建它?
QtCreator中是否有任何远程编译器选项?
我有一个QtQuick2.0/QtQuick2.1应用程序,其中包含以下默认代码main.cpp
:
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/WikiTransferor2/mainMode3.qml"));
viewer.showExpanded();
return app.exec();
}
Run Code Online (Sandbox Code Playgroud)
如何让这个窗口无法调整大小?
我使用 Qt 和 QtQuick 技术开发了一个跨平台应用程序。与后端服务器的通信由 Let's Encrypt SSL 保护。
但在 2021 年 9 月,Qt 应用程序开始报告“SSL 握手失败”错误,而客户端或服务器没有任何更改。问题是什么?