n
newbie.works.with.QTFeb. 24, 2019, 10:41 a.m.
Помогите не могу понять как назначить постоянное считывание из txt
Здраствуйте подскажите пожалуйста:
значение из C++ передаётся в qml, но только один раз при запуске, а мне нужно постоянно проверять переменную из txt.
Вот проект
ifsprite.h:
#ifndef IFSPRITE_H #define IFSPRITE_H #include <QObject> class IFSprite : public QObject { Q_OBJECT public: IFSprite(); Q_INVOKABLE QString getString(); }; #endif // IFSPRITE_H
ifsprite.cpp
#include "ifsprite.h" #include <fstream> #include <iostream> #include <cstring> using namespace std; IFSprite::IFSprite() { } QString IFSprite::getString() { ifstream fin("D:\\Progmator\\input.txt"); int temp; fin >> temp; fin.close(); return QString::number(temp); }
main.cpp
#include <QGuiApplication> #include <QQmlApplicationEngine> #include <QQmlContext> #include "ifsprite.h" int main(int argc, char *argv[]) { QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QGuiApplication app(argc, argv); QQmlApplicationEngine engine; IFSprite _sprite; QQmlContext *ctx = engine.rootContext(); ctx->setContextProperty("IFSprite",&_sprite); engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); if (engine.rootObjects().isEmpty()) return -1; return app.exec(); }
main.qml
import QtQuick 2.9 import QtQuick.Window 2.2 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Dialogs 1.2 Window { flags: Qt.ToolTip | Qt.FramelessWindowHint | Qt.WA_TintedBackground |Qt.WindowStaysOnTopHint color: "#00000000" visible: true width: 100 height: 460 x: (Screen.width - width) y: (Screen.height - height) Rectangle { anchors.fill: parent color: "transparent" } AnimatedSprite { id: sprite; width: 100; height: 100; anchors.centerIn: parent; source: "Donald.png" frameX: 0 frameY: IFSprite.getString(); frameRate: 18; frameWidth: 100 frameHeight: 100 frameCount: 6 running: folse; } }
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
d
- dsfs
- April 26, 2024, 4:56 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:80points,
- Rating points4
d
- dsfs
- April 26, 2024, 4:35 a.m.
C++ - Test 001. The first program and data types
- Result:73points,
- Rating points1
Last comments
Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Lesson 007. Working with ICMP Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоFeb. 5, 2024, 1:50 a.m.
EVADec. 25, 2023, 10:30 a.m.
Boost - static linking in CMake project under Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Lesson 056. Connecting the Boost library in Qt for MinGW and MSVC compilers Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Now discuss on the forum
DA
Unlock Your Aesthetic Potential: Explore MSC in Facial Aesthetics and Cosmetology in India Embark on a transformative journey with an msc in facial aesthetics and cosmetology in india . Delve into the intricate world of beauty and rejuvenation, guided by expert faculty and …
Dr Gangil AcademicsApril 20, 2024, 7:45 a.m.
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел ДорофеевApril 14, 2024, 2:35 a.m.
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
Добрый день
Таймер добавьте в QML файл
Попробовал, не работает отрисовывает по Y=0 игнорируя значения
а вы вообще уверены, что у вас в txt файле хоть что-то меняется? я вот очень сильно сомневаюсь.
для этого я написал доп программу на DevC++
проверял значение в блокноте меняется, а спрайт так и остаётся по Y=0
изначально в "D:\Progmator\input.txt" лежит значение 100
а он просто игнорирует
возвращайте int вместо QString,
Пожалуйта, напишите строку, просто не понимаю как (у меня выдаёт ошибку).
Если у вас там правильно считывается int, то вот так должно быть правильно.
поменял в заголовочном на int
и сделал как вы писали
но Y так и остался =0
поменял на свой изначальный вариант:
всёравно игнорирует
Вы понимаете, что frameY - это свойство с типом данных int, и подставлять туда QString по меньшей мере странно?
Что выводит qDebug?
я думал что QDebag покажет результат в выводе приложения но там только:
20:34:54: Запускается D:\Material\TRAN\build-untitled30-Desktop_Qt_5_12_0_MinGW_64_bit2-Release\release\untitled30.exe...
qrc:/main.qml:58: ReferenceError: folse is not defined
20:35:11: D:/Material/TRAN/build-untitled30-Desktop_Qt_5_12_0_MinGW_64_bit2-Release/release/untitled30.exe завершился с кодом 0
если в qml:
то значение qDebag не выводит
и пишет в выводе то что писал я
однако если в qml:
то спрайт на правильном Y
и текс в выводе следущий:
20:50:42: Запускается D:\Material\TRAN\build-untitled30-Desktop_Qt_5_12_0_MinGW_64_bit2-Release\release\untitled30.exe...
100
qrc:/main.qml:52: ReferenceError: folse is not defined
20:50:49: D:/Material/TRAN/build-untitled30-Desktop_Qt_5_12_0_MinGW_64_bit2-Release/release/untitled30.exe завершился с кодом 0
Вот что у меня
Первое: ошибка в AnimatedSprited
Второе: сдаётся мне, что у вас там ничего в txt файле не меняется. Я не вижу причин, чтобы там что-то изменялось.
тест 2 тот же результат
Pfhf,jnfkj!!!!
Заработало!!!!!
2 месяця просидел на одном месте но сделал!
спасибо вам за всё!
спасибо за помощь и терпение!
Пожалуйста. Будут ещё вопросы, задавайте на форуме. Кроме меня здесь есть другие опытные программисты, хоть они и скромничают.
P/S/
Мда, что-то я тупанул вот с этими строчками. Забыл про них