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

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 ... 77 78 [79] 80 81 ... 96
1171  Qt / Пользовательский интерфейс (GUI) / Плагин из приложения. : Июнь 02, 2011, 20:12
Есть некое приложение, нельзя сказать чтобы совсем маленькое, тысяч 30 строк. У него есть свое MainWindow:QMainWindow, в котором есть кучка "подокон", меню, тулбар и т.д. Теперь надо из этого приложения сделать плагин, чтобы его можно было подключать к другому приложению. Вот пока в раздумьях, как это лучше всего реализовать... Переписывать приложение, отказываться от MainWindow не с руки, это самый долгий путь, а время дорого. Поэтому вопрос - как поддержка плагинов в Qt 4.7 относится к тому, что в плагине может быть свое MainWindow? Допустимо ли это? Окно плагина обязательно должно присутствовать на экране одновременно с окном основного приложения (в частности, чтобы их можно было легко разнести на 2 монитора). Поэтому нельзя использовать окно основного приложения для размещения подокон плагина, да и технически это выглядело бы очень непросто.

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

Кто какие идеи может подать? Принимаются к обсуждению любые варианты.
1172  Разное / Говорилка / Re: Qt - finita la comedia : Апрель 28, 2011, 18:28
и Андроид устройства, и программы для них покупают гораздо активнее, чем йфоны и их программы
Пруфлинк?

Пожалуйста, причем обратите внимание - информация от эпломанов, хотя по другим источникам тоже самое будет

3й абзац
Цитировать
The App Store has grown by 132 percent over the last year
(когда американцы говорят has grown, это не число приложений, а финансовый рост)

6й абзац
Цитировать
Google's Android Market took fourth place, registering a 4.7 percent share on revenues of $102 million, representing growth of 861.5 percent compared to 2009

рост в 6.5 раз (!!!) больше, и это не числа приложений на Маркете, а именно REVENUE (доход, выручка) - то есть, приложения таки покупают-покупают! и активнее, чем на йфоне!

судя по количеству выпускаемых Android-аппаратов, рынок приложений в год-два догонит и перегонит рынок приложений йфона, и продолжит расти - если, конечно, форсмажор не случится

Цитировать
кому-то проще сделать хит, на котором можно ПОДЗАРАБАТЫВАТЬ, чем освоить Andriod SDK

а что в этом удивляет? во-1ых, Android SDK - это Dalvik, ака Java, как бы совсем другой язык программирования, во-2ых, для освоения современного SDK требуется немалое время, поэтому разумеется проще и быстрее сделать на том, что уже освоено, чем переключаться на другой инструмент

и Android SDK, и Qt достаточно сложны и объемны, чтобы для разработки качественных приложений на них требовались объемные знания инструмента, а подзарабатывать != халтурить, производством халтуры не занимаемся

Цитировать
Кстати в соседней теме ищут разработчика на Qt под Android.

не знаю, что и кого там могут искать (вот где пруфлинк бы пригодился) - но Qt на Android портируется не официально, причем с обеих сторон - ни Google это дело не поддерживает (поскольку противоречит самой идеологии Android), ни Nokia - значит есть большие сомнения в доверии к нему, и пока только альфа существует, это под альфу что-ли коммерческие приложения делать?? дай то Бог, если доведут до релиза, там посмотрим, но для коммерческого успеха будет необходима поддержка Google (для распространения приложений через Market), которой ожидать не приходится

1173  Разное / Говорилка / Re: Qt - finita la comedia : Апрель 23, 2011, 20:51
Цитировать
- поясните пожалуйста про Андройд? Вы считаете там будут толпы "золотых" потребителей, как у apple?

вообще-то в Android Market уже в 3 раза больше программ, чем в аналогичном магазине приложений для йфонов, и их число постоянно растет, поскольку и Андроид устройства, и программы для них покупают гораздо активнее, чем йфоны и их программы, а интеграция туда Qt ускорила бы этот рост, будь Qt интегрирован в Android, я бы лично, да и многие другие Qt-программисты на досуге могли бы делать приложения, и подзарабатывать через Маркет
1174  Qt / Работа с сетью / Re: А как просто картинку загрузить? [SOLVED] : Апрель 23, 2011, 20:36
Цитировать
MainWindow::paintEvent() - будет вызван только после ресайза или update().

ничего подобного, он всегда вызывается при первой отрисовке окна, поэтому внутри него

Код:
if( firstpaint )
{
     firstpaint = false;
     .....
}

вполне съедобно, но не в том случае, если требуется работа с сетью, что к сожалению, нигде не документировано
1175  Qt / Пользовательский интерфейс (GUI) / Виджеты на тулбарах : Апрель 20, 2011, 23:40
Как их на тулбары поместить, в принципе, понятно (хотя пока не пробовал) - а вот в дизайнере, никак что-ли вообще?

И заодно - как лучше всего сделать, чтобы виджеты можно было в приложении перетаскивать на тулбары из специальной панели? В современных крупных приложениях это общепринято, насколько я знаю, инструментарий типа Delphi это поддерживает. А вот готового решения в Qt что-то не вижу (может плохо смотрю). Это только вручную, с использованием QDrag можно сделать?
1176  Qt / Работа с сетью / Re: А как просто картинку загрузить? [SOLVED] : Апрель 18, 2011, 22:13
все, победил - оказалось, что хотя QNetWorkManager и асинхронный, но при вызове его из обработчиков событий он корректно не работает

при вызове из отдельных тредов или слотов обработки сигналов таймера работает нормально
1177  Qt / Работа с сетью / Re: А как просто картинку загрузить? : Апрель 18, 2011, 00:24
не, блин, мозги сломал... уже и с семафорами пробовал - бестолку

наверно дело в том, что прорисовку картинок решил вставить в перегруженный метод paintEvent()

Код:
void MainWindow::paintEvent( QPaintEvent * event )
{
    if( firstpaint )
    {
        listmanager->get( QNetworkRequest( QUrl( "http://........" ) ) );
        firstpaint = false;
    }
}

более подходящего места что-то не вижу, может кто подскажет? всадил туда, поскольку картинки надо показывать в окне, то есть, отрисовывать, и вроде как paintEvetn для этого подходящее место, но возможно нет

когда загружен список картинок с помощью listmanager, метод его обработки вызывается

Код:
void MainWindow::finishedList( QNetworkReply * reply )
{
    if( reply->error() == QNetworkReply::NoError )
    {
        forever
        {
            QByteArray byteline = reply->readLine();
            if( byteline.size() == 0 )
                break;
            urllist << byteline; // urllist это QStringList
        }
        foreach( QString url, urllist )
            imgmanager->get( QNetworkRequest( url ) ) );
    }
    else
        networkerror = true;
    reply->deleteLater();
}

и вот после этого косяк, запросы с адресами из urllist явно набиваются в очередь вызовами imgmanager->get(), и пока они не закончат набиваться, ни один из запросов не завершается, и только когда они все набились, все это завершилось, только тогда начинает стрелять вызовами void MainWindow::finishedImg( QNetworkReply * reply ), где собственно картинки рисуются в окне с помощью QLabel, и там же обрабатываются

такое не годится, мне надо картинки обрабатывать последовательно, одну за другой, их могут быть десятки тысяч

можно как-то пропихивать эту очередь в QNetworkAccessManager()?
1178  Qt / Работа с сетью / Re: А как просто картинку загрузить? : Апрель 17, 2011, 20:27
переделал на использование QNetworkAccessManager, тем более, что с WebKit в статике не собирается

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

хотя он правильно привязан, проверял на одной картинке - она грузится, слот вызывается, обрабатывает

тупо флаг взводить в обработчике завершения загрузки картинки - не правильно, будет процессор пожираться, да и не работает, кстати...

есть способ сделать сетевые операции синхронными, чтобы get() возвращался только когда обработчик завершения и все остальные отработают?
1179  Qt / Работа с сетью / Re: А как просто картинку загрузить? : Апрель 15, 2011, 12:52
хотелось что-нибудь типа

QImage pic = getWebImage( "http://сервер.там/image.jpg" );

если есть где-то готовое getWebImage(), но очевидно нет, значит придется самому написать, вместо одной строки будет лишние два десятка

тем более, что WebKit в статике не собирается, начиная с 4.7.0 его поддержка для статической сборки отменена  Обеспокоенный
1180  Qt / Работа с сетью / Re: А как просто картинку загрузить? : Апрель 14, 2011, 15:48
а более высокого уровня в WebKit нет средств?
1181  Qt / Работа с сетью / Re: А как просто картинку загрузить? : Апрель 14, 2011, 15:41
Цитировать
Скачай

Как? В WebKit есть простой способ это сделать?
1182  Qt / Работа с сетью / А как просто картинку загрузить? [SOLVED] : Апрель 14, 2011, 15:31
Есть прямой урл картинки формата JPG. Надо ее получить в QImage. И что-то не очень видно, как это сделать.

Код:
QImgage pic( URL );

работать не должно, поскольку URL - не имя файла.

Загружать всю страницу и разбирать ее содержимое через DOM не годится, программа получает прямые ссылки на картинки, которые надо слизать.

1183  Qt / Работа с сетью / Re: Как загрузить текстовую страницу для обработки? : Апрель 13, 2011, 19:18
это я видел, а с опытом использования никого нет?
1184  Qt / Работа с сетью / Re: Как загрузить текстовую страницу для обработки? : Апрель 13, 2011, 18:49
Цитировать
Лучше почитай про QNetworkAccessManager

на этом уровне получается, надо самому озаботиться рендерингом и т.д., но хочется чтобы максимум автоматизации Qt использовалось

Цитировать
походу QString QWebFrame::toPlainText () const

так он в QString вернет весь текст страницы? только содержимое <body></body>? заголовок будет отброшен? как в QString будут разделены те строки, которые имеют тэг <b> в HTML коде? а если это plain text с обычными line break? концы строк останутся?
1185  Qt / Работа с сетью / Как загрузить текстовую страницу для обработки? : Апрель 13, 2011, 17:31
Нужно с URL загрузить находящуюся там HTML страницу, после чего не показывать ее, а обработать содержащиеся в ней строки текста после ее рендеринга. Либо загрузить TXT-страницу без HTML тегов и обработать построчно содержащийся в ней текст. То есть, в обоих случаях надо получить текстовые строки загруженной страницы построчно в виде массива объектов QString (или в виде QList из объектов QString). Стили, таблицы, встроенные объекты страницы и т.д. не имеют значения - считается, что страница содержит только плоский текст с маркерами концов строк. Кодировка текста тоже не имеет значения, текст на английском.

Как это лучше всего делать? Опыта работы с Web в Qt нет, у Шлее практически ничего не описано. Где лучше почитать про работу с WebKit?
Страниц: 1 ... 77 78 [79] 80 81 ... 96

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