© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
16 августа 2018 г. 8:48

Serving UI via HTTP

Продолжаю разбирать примеры - вот пример
===================================================
Serving UI via HTTP
To load a simple user interface via HTTP we need to have a web-server, which serves the UI documents. We start
of with our own simple web-server using a python one-liner. But first we need to have our demo user interface.
For this we create a small main.qml file in our project folder and create a red rectangle inside.
// main.qml
import QtQuick 2.5
Rectangle {
width: 320
height: 320
color: '#ff0000'
}
To serve this file we launch a small python script:
$ cd <PROJECT>
# python -m SimpleHTTPServer 8080
Now our file should be reachable via http://localhost:8080/main.qml. You can test it with:
$ curl http://localhost:8080/main.qml

Or just point your browser to the location. Your browser does not understand QML and will not be able to render
the document through. We need to create now such a browser for QML documents. To render the document we
need to point our qmlscene to the location. Unfortunately the qmlscene is limited to local files only. We
could overcome this limitation by writing our own qmlscene replacement or simple dynamically load it using
QML. We choose the dynamic loading as it works just fine. For this we use a loader element to retrieve for us the
remote document.
// remote.qml
import QtQuick 2.5
Loader {
id: root
source: 'http://localhost:8080/main2.qml'
onLoaded: {
root.width = item.width
root.height = item.height
}
}
Now we can ask the qmlscene to load the local remote.qml loader document. There is one glitch still. The
loader will resize to the size of the loaded item. And our qmlscene needs also to adapt to that size. This can be
accomplished using the --resize-to-root option to the qmlscene:
$ qmlscene --resize-to-root remote.qml
Resize to root tells the qml scene to resize its window to the size of the root element. The remote is now loading
the main.qml from our local server and resizes itself to the loaded user interface. Sweet and simple.
====================================================================================

Питон у меня установлен - но как запустить локальный SimpleHTTPServer - я не понимаю -
когда я пишу в командной строке
C:\qt_buy> python -m SimpleHTTPServer 8080
- ругается -
C:\Python35\python.exe: No module named SimpleHTTPServer





Добрый день!

Поздновато, конечно, но тем не менее (я в отпуске был, через неделю проджолжение отпуска будет)
Вроде как этот модуль был влит в другой модуль в третьем питоне. Должен так запускаться
$python3 -m http.server 9000



Для Django рекомендую VDS-хостинг TIMEWEB

  • #
  • Ответ был помечен как решение
  • 23 августа 2018 г. 11:30
Странно - у меня он тоже запустился
python -m http.server 9000
- видимо название поменялось - в книжке  - SimpleHTTPServer
Спасибо!

Ответы

Только авторизованные пользователи могут отвечать на форуме.
Пожалуйста, Авторизуйтесь или Зарегистрируйтесь
24 сентября 2018 г. 17:42
edorofeeva

C++ - Тест 001. Первая программа и типы данных

  • Результат 100баллов,
  • Очки рейтинга10
24 сентября 2018 г. 17:37
edorofeeva

C++ - Тест 001. Первая программа и типы данных

  • Результат 66баллов,
  • Очки рейтинга-1
23 сентября 2018 г. 14:38
No Names

C++ - Тест 001. Первая программа и типы данных

  • Результат 60баллов,
  • Очки рейтинга-1
Последние комментарии
25 сентября 2018 г. 15:24
pasagir

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Это запись метода которая работает параллельно с БД, данные из парсера поступают в БД и в наш метод одновременно
25 сентября 2018 г. 14:56
pasagir

Qt/C++ - Урок 006. QSqlQueryModel - Таблицы в Qt с помощью SQL-запросов

Как можно динамически отображать данные в таблице? На COM-порт непрерывно приходят данные, я их принимаю сохраняю в БД, а после остановка приема/передачи данные отображаются в таблице. В табли...
25 сентября 2018 г. 10:43
Евгений Легоцкой

Qt/C++ - Урок 017. QGraphicsScene или как работать с графикой в Qt

Прямо так не написано. Хотя соглашусь, что в качестве улучшения вызов данного метода здесь к месту.
25 сентября 2018 г. 10:37
reef425

Qt/C++ - Урок 017. QGraphicsScene или как работать с графикой в Qt

В статье написано, что таймер сработает один раз. Но это не так. Было бы хорошо добавить timer->setSingleShot(true); После инициализации таймера.
24 сентября 2018 г. 15:09
Евгений Легоцкой

Qt Linux - Урок 001. Автозапуск Qt приложения под Linux

А вот здесь у меня есть пример использования supervisor. https://evileg.com/ru/post/3/ Вся статья вам там не интересна, интересен только шаг с настройкой supervisor. Он получается ...
Сейчас обсуждают на форуме
25 сентября 2018 г. 15:57
Евгений_Канусовский@1981

Чтение файлов в python

Вот код: import sys from re import matchfrom vira import *from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtWidgets import (QDialog, QFileDialog, QMessageBox, QLineEdit, QProgr...
25 сентября 2018 г. 13:51
DmitrySD

Трансляция видео с помощью VLC по RTP

Спасибо! Данная команда не дала результата. В итоге сделал трансляцию через ffmpeg. ffmpeg.exe -f gdigrab -framerate 30 -i desktop -vcodec libx264 -preset:v veryfast -b:v 4000k -f...
25 сентября 2018 г. 13:39
Arrow

Настройка Qt Creator для Android

Конечно отпишусь.
25 сентября 2018 г. 12:22
avovana

Автозапуск и авторестарт Qt Gui Application в Linux

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