Russian Qt Forum
Апрель 23, 2024, 16:08 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 2 [3] 4 5 ... 38
31  Qt / Qt Quick / Re: QML - последовательность вызовов onAccepted(), onRejected(), onClose(). : Октябрь 24, 2022, 08:01
Сделать  две кнопки [OK] и [Cancel] плюс  в уголку кнопка закрытия [X] кнопка [MyX].

диалогу обработчики:
Код:

onAccepted() { ... Действие 1 ... }
onRejected() { ... Действие 2 ... }
onMyX() { ... Действие 3 ... }

Т.е. образом в onClose() вообще ни нужно ни чего анализировать. Вызываете Действие 3, делаете нужный код и в конце вызываете onClose() принудительное закрытие окна. Так получиться?
32  Qt / Qt Quick / Динамические кнопки в QML : Сентябрь 30, 2022, 09:58
Подскажите, как такое реализовать?

допустим есть кнопка "+". Нажимаешь - появляется рядом кнопка с текстом (пусть будет "1"). Нужно запомнить эту кнопку. Как запомнить - отдельная тема. При повторном запуске должно быть две кнопки: "+" и "1". Добавили ещё 3 кнопки с текстом "2", "3" и "4". Закрыли приложение, открыли - на экране должно быть пять кнопок: "+", "1", "2", "3", "4".
Т.е. при запуске приложения как то нужно считать какой-то конфиг/сеттинг и нарисовать создать столько кнопок, сколько нужно и с текстом с которым нужно.

Может есть пример для Qml динамического создания кнопок?
33  Qt / Qt Quick / Re: Виджет настройки : Апрель 01, 2022, 14:23
к сожелению нет фотошопа.... про QScrollArea....

т.е. делаю прямоугольник, заполняю его беру QScrollArea. у QScrollArea убираю видимые скролбары... потом рисую картинку шкалы (допустим в png), размещяю эту картинку в QScrollArea и.... зациклить QScrollArea?  а у QScrollArea можно зациклить сдвиг?

ps а теперь бы всё тоже самое, только на QML.
34  Qt / Qt Quick / Re: Виджет настройки : Апрель 01, 2022, 14:03
А зачем виджет и QML? (цыганщиной отдает).

goto wikipedia
Элеме́нт интерфе́йса — примитив графического интерфейса пользователя. Другие названия: элемент управления, ви́джет (англ. widget).

Свой кастомный виджет (или элемент управления) можно реализовать с помощью каких то базовых виджетов или с нуля Qt, QML, GrLib, LVGL,....

Цитировать
Это стандартная операция pan(orama)
что за операция?
35  Qt / Qt Quick / Виджет настройки : Апрель 01, 2022, 11:59
Всем доброго дня.

В прикреплении картинка виджета, который я бы хотел реализовать на QML. Это колесо настройки (вертикальное или горизонтальное)....
Суть: в центр виджета палец(мышку) ставишь и тянешь вправо-влево... вся линейка со шкалой начинает двигаться вместе с пальцем (наподобе слайдера). У виджета должно быть свойство currentValue, step1 и step2, инерция.
step1 - это минимальное значение на которое изменится currentValue, а step2 - это минимальное расстояние, на которое надо протянуть виджет, чтобы изменился currentValue.
Т.е. если step1 = 100, а step2 = 50 (пикселе/мм/inch/pt/попугев), то если протянуть виджет на 150 пикселей, то currentValue изменится на 300.

Ну и если по виджету чиркнуть, то прокрутка должна быть инертная и по инерции промотать какое-то кол-во  до остановки. Вобщем аналог механического инертного колеса настройки.

Как подобное реализовать? Может есть похожий пример где в гугле? Даже не знаю как сформулировать поиск, чтоб похожее найти. Или может кто подкинет мыслеформу, как подобное реализовать в QML?
36  Qt / Qt Quick / VirtualKeyboard : Февраль 17, 2022, 15:15
Сделал на QML приложение с QtQuick.VirtualKeyboard. На десктопе работает.... приемлемо.... Собрал это приложение для железки на базе imx6. Работает. eglfs справляется с графикой на ура. Всякие тени, полупрозрачности, визуальные эффекты.... всё отлично.... НО! Вызываю виртуальную клавиатуру.... при первой вызове пауза примерно секунда... при последующем вызове без пауз. Нажимаю кнопку "смена языка" - пауза 3-4 секунды. Клавиатура кастомизированая с помощью QtQuick.VirtualKeyboard.Styles 2.15. Каждая кнопка с подсветкой, с тенью, выглядит как 3Д. Красивая. Но при переключении с рус на англ и обратно переключение происходит очень долго, несколько секунд. Такое чувство, что при смене языка QML заново строит клавиатуру из кастомного стиля. Заново создает каждую кнопку со всеми тенями.
На декстопе тоже переключение с задержкой, но на десктопе задержка меньше 1 сек и это не так критично.

Можно как нибудь указать Qt/QML-ю, чтобы он при старте, в фоне, строил две раскладки и держал их в ОЗУ, а при смене, просто менял Item-ы? (или есть способ ускорить переключение клавы?)

ps можно самому с нуля написать свою клавиатуру на QML с требуемым функционалом, но возможно есть готовое решение и "ларчик открывается просто"?
37  Программирование / Общий / Re: Программа для видеорегистратора : Февраль 08, 2022, 12:51
Цитировать
ты не в состоянии сверстать простую страницу?
нет. даже браться за это не хочу.

Цитировать
перебираются циклом в скрипте.
в каком скрипте? что такое скрипт? нужно скрипт писать? т.е. нужно своё ПО писать?

Цитировать
веб-сервер поднимается один раз как демон
ещё и вебсервер поднимать!?  

 
Цитировать
VLC может писать в файлы
я посмотрел на него документацию. да, он может писать файлы. и что? он может ещё много чего. Он не сможет записать файлы и показать их мне через веб. Как он решит мою задачу? Ни как.


Вы предлагаете набор инструментов. эти ваши html, скрипты, вебсервера - для меня это дичь. мне проще на qt/qml написать свой видеорегистратор (используя ту же ffmpeg). Но я этого не хочу делать (да и не когда), я спросил - есть ли что готовое?
Вообще о чем спор?
38  Программирование / Общий / Re: Программа для видеорегистратора : Февраль 08, 2022, 10:23
было требование писать видео с камеры и смотреть записанное через браузер — это решается без всякого специализированного ПО.
Каким образом? пусть будет без детектора движения и всяких примочек.... нужно писать видео.... видео нельзя писать одним файлом. Нужно допустим по 2 минуты... или по 1 часу. Каким образом с помощью  ffmpeg писать видео в файлы по 2 минуты? Далее.... нужно через веб смотреть видео. Как ffmpeg это организует? командой cli вы поднимете вебсервер и ffmpeg имеет готовую html вебстраничку с плеером?

Цитировать
ты очень удачно пропустил информацию о VLC
да, а его пропустил, потому как это плеер. как он мне поможет? как им можно писать видео в файлы и потом смотреть через браузер?
39  Программирование / Общий / Re: Программа для видеорегистратора : Февраль 08, 2022, 07:00
Вы не сможете с помощью этого cli команды в cli (cli от ffmpeg) развернуть видеорегистратор, с просмотром архива, с web доступом, с настройкой записи,с настройкой детектора движения, с оповещением, и т.п.
Но вы сможете написать своё ПО для этих целей, в котором можете использовать ffmpeg. ffmpeg (с тем же cli) можно использовать как основу для своего ПО. Но я не пишу программу, я ищу готовую.

ps. goto wiki ffmpeg
"FFmpeg — набор свободных библиотек...", "Тип    мультимедийный фреймворк"

goto wiki фреймворк
"Фре́ймворк -  программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта."
40  Программирование / Общий / Re: Программа для видеорегистратора : Февраль 07, 2022, 13:43
у ffmpeg есть cli
так я так и сказал - это фреймворк. Что с этого cli? Возможно можно написать ПО с использованием ffmpeg. У меня нет задачи написать ПО, я хочу использовать готовое ПО.
41  Программирование / Общий / Re: Программа для видеорегистратора : Февраль 07, 2022, 12:05
погугил ffmpeg.... - фреймворк, а не законченое по....  загуглил vcl, наткнулся на AVReg. вроде то, что надо...
42  Программирование / Общий / Программа для видеорегистратора : Февраль 07, 2022, 10:45
Хочу сделать дома регистратор. Бегло погуглил - есть куча бесплатного ПО, но оно требует десктоп (монитор, клавиатура, иксов... да ещё некоторым подавай Windows10).
Я бы хотел к какой-нибудь малине (без клавиатуры и монитора) прикрутить ssd и пару ip камер и смотреть видосы/конфигурировать с любого пк/смартфона через web.

Может кто-нибудь подсказать готовое ПО?
43  Qt / Qt Embedded / Re: Could not load the Qt platform plugin "eglfs" : Декабрь 21, 2021, 08:09
добавил все либы/плуги.... получаю такой вывод при запуске приложения

Цитировать
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml/egldeviceintegrations" ...
loaded library "/home/root/work/testQml/plugins/egldeviceintegrations/libqeglfs-emu-integration.so"
EGL library doesn't support Emulator extensions
./start: line 6:  2405 Aborted                 ./testQml

Ну хорошо.... ещё раз запускаю c0nfigure на хосте, которым собирал Qt

Цитировать
./configure -confirm-license -v -release \
-prefix ~/tools/imx6/qt5_15_J \
-nomake examples -opensource \
-no-pch -opengl es2 -egl -eglfs \
-device imx6-g++ -no-harfbuzz -no-gstreamer \
-device-option CROSS_COMPILE=~/toolchainChine/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi- \
       -sysroot ~/toolchainChine/sysroots/cortexa9hf-neon-poky-linux-gnueabi

получаю это

Цитировать
Qt Gui:
...
  EGL .................................... yes
  OpenVG ................................. no
  OpenGL:
    Desktop OpenGL ....................... no
    OpenGL ES 2.0 ........................ yes
    OpenGL ES 3.0 ........................ yes
    OpenGL ES 3.1 ........................ no
    OpenGL ES 3.2 ........................ no
  Vulkan ................................. no
  Session Management ..................... yes
QPA backends:
  DirectFB ............................... no
  EGLFS .................................. yes
  EGLFS details:
    EGLFS OpenWFD ........................ no
    EGLFS i.Mx6 .......................... no
    EGLFS i.Mx6 Wayland .................. no
    EGLFS RCAR ........................... no
    EGLFS EGLDevice ...................... no
    EGLFS GBM ............................ no
    EGLFS VSP2 ........................... no
    EGLFS Mali ........................... no
    EGLFS Raspberry Pi ................... no
    EGLFS X11 ............................ no
  LinuxFB ................................ yes
  VNC .................................... yes
  XCB:
    Using system-provided xcb-xinput ..... no
    Native painting (experimental) ....... no
    GL integrations:
      GLX Plugin ......................... no
      EGL-X11 Plugin ..................... no
Вроде EGLFS yes, но моя платформа imx6, почему-то для неё EGLFS i.Mx6 no. От куда берётся QPA backends? Из sysroot?

ps Приложения на виджетах кросскомпилированное с новым Qt5.15 запускаются на таргете нормально,  а QML-ые приложения не хотят.

44  Qt / Qt Embedded / Re: Could not load the Qt platform plugin "eglfs" : Декабрь 20, 2021, 15:27
Могу дать совет - собирать BSP через Yocto. Иначе - все тлен. ))
слишком высокий порог вхождения в Yocto. Попробовал buildroot, но готового конфига под мой таргет нет. Собрал своё ядро/дерево/рутфс - частично работает. Надо ядро патчить.... драйвера править.... есть уже собранная пропатченая рабочая сборка линукса с кросстулчейном.... пробую к ней Qt свежий прикрутить. 

45  Qt / Qt Embedded / Re: Could not load the Qt platform plugin "eglfs" : Декабрь 20, 2021, 10:36
вот ещё.... убрал лишние плагины, добавил export QT_DEBUG_PLUGINS=1, получил...



Цитировать
root@imx6qsabresd:~/work/testQml# ./testQml
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml/plugins/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/plugins/platforms/libqeglfs.so"
Found metadata in lib /home/root/work/testQml/plugins/platforms/libqeglfs.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "eglfs"
        ]
    },
    "archreq": 0,
    "className": "QEglFSIntegrationPlugin",
    "debug": false,
    "version": 331520
}


Got keys from plugin meta data ("eglfs")
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml/plugins" ...
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml" ...
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Core.la"
QElfParser: '/home/root/work/testQml/libQt5Core.la' is not an ELF object
"'/home/root/work/testQml/libQt5Core.la' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Core.prl"
QElfParser: '/home/root/work/testQml/libQt5Core.prl' is not an ELF object
"'/home/root/work/testQml/libQt5Core.prl' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Core.so"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Core.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Core.so.5"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Core.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Core.so.5.15"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Core.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Core.so.5.15.2"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Core.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Gui.la"
QElfParser: '/home/root/work/testQml/libQt5Gui.la' is not an ELF object
"'/home/root/work/testQml/libQt5Gui.la' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Gui.prl"
QElfParser: '/home/root/work/testQml/libQt5Gui.prl' is not an ELF object
"'/home/root/work/testQml/libQt5Gui.prl' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Gui.so"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Gui.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Gui.so.5"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Gui.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Gui.so.5.15"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Gui.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Gui.so.5.15.2"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Gui.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Network.la"
QElfParser: '/home/root/work/testQml/libQt5Network.la' is not an ELF object
"'/home/root/work/testQml/libQt5Network.la' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Network.prl"
QElfParser: '/home/root/work/testQml/libQt5Network.prl' is not an ELF object
"'/home/root/work/testQml/libQt5Network.prl' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Network.so"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Network.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Network.so.5"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Network.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Network.so.5.15"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Network.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Network.so.5.15.2"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Network.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Qml.la"
QElfParser: '/home/root/work/testQml/libQt5Qml.la' is not an ELF object
"'/home/root/work/testQml/libQt5Qml.la' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Qml.prl"
QElfParser: '/home/root/work/testQml/libQt5Qml.prl' is not an ELF object
"'/home/root/work/testQml/libQt5Qml.prl' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Qml.so"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Qml.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Qml.so.5"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Qml.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Qml.so.5.15"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Qml.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Qml.so.5.15.2"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Qml.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5QmlModels.la"
QElfParser: '/home/root/work/testQml/libQt5QmlModels.la' is not an ELF object
"'/home/root/work/testQml/libQt5QmlModels.la' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5QmlModels.prl"
QElfParser: '/home/root/work/testQml/libQt5QmlModels.prl' is not an ELF object
"'/home/root/work/testQml/libQt5QmlModels.prl' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5QmlModels.so"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5QmlModels.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5QmlModels.so.5"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5QmlModels.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5QmlModels.so.5.15"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5QmlModels.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5QmlModels.so.5.15.2"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5QmlModels.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Quick.la"
QElfParser: '/home/root/work/testQml/libQt5Quick.la' is not an ELF object
"'/home/root/work/testQml/libQt5Quick.la' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Quick.prl"
QElfParser: '/home/root/work/testQml/libQt5Quick.prl' is not an ELF object
"'/home/root/work/testQml/libQt5Quick.prl' is not an ELF object"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Quick.so"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Quick.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Quick.so.5"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Quick.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Quick.so.5.15"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Quick.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/libQt5Quick.so.5.15.2"
"Failed to extract plugin meta data from '/home/root/work/testQml/libQt5Quick.so.5.15.2'"
         not a plugin
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/testQml"
"Failed to extract plugin meta data from '/home/root/work/testQml/testQml'"
         not a plugin
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml/plugins/platforms/platforms" ...
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml/plugins/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/home/root/work/testQml/plugins/platforms/libqeglfs.so"
Got keys from plugin meta data ("eglfs")
QFactoryLoader::QFactoryLoader() checking directory path "/home/root/work/testQml/platforms" ...
Cannot load library /home/root/work/testQml/plugins/platforms/libqeglfs.so: (libQt5EglFSDeviceIntegration.so.5: cannot open shared object file: No such file or directory)
QLibraryPrivate::loadPlugin failed on "/home/root/work/testQml/plugins/platforms/libqeglfs.so" : "Cannot load library /home/root/work/testQml/plugins/platforms/libqeglfs.so: (libQt5EglFSDeviceIntegration.so.5: cannot open shared object file: No such file or directory)"
qt.qpa.plugin: Could not load the Qt platform plugin "eglfs" in "/home/root/work/testQml/plugins/platforms" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs (from /home/root/work/testQml/plugins/platforms), eglfs.

Aborted
Не могу понять что пошло не так и как это исправить?
Страниц: 1 2 [3] 4 5 ... 38

Страница сгенерирована за 0.06 секунд. Запросов: 23.