Qt & internet

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

bosko
Сообщения: 12

Qt & internet

Сообщение bosko »

Здравствуйте)

Господа, вопрос:

Хочется создать приложение на qt, при запуске которого, в окне приложения открывался браузер по фиксированному или заданному юзером адресу. Т.е. программа позволяла бы без браузера работать в интернете ;)

В делфи делается одной строкой:
WebBrowser1.Navigate('http://localhost/');

Какой класс использовать? В какую сторону рыть? Возможно ли это вообще?
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Qt & internet

Сообщение Liksys »

Теме место в программировании.
Используй QTextBrowser и QHttp. Для простенького браузера должно хватить.
Спасибо сказали:
bosko
Сообщения: 12

Re: Qt & internet

Сообщение bosko »

Может тогда модератор перенесет тему в Программирование? Если что спасибо :)

Жду ещё советов. Земляк, спасибо ;)
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Qt & internet

Сообщение eduard_pustobaev »

bosko писал(а):
26.01.2007 19:53
Может тогда модератор перенесет тему в Программирование? Если что спасибо :)

Жду ещё советов. Земляк, спасибо ;)


А какие тут ещё советы нужны? Ну QUrl ещё есть плюс к тому, что написано. Вроде не сложнее, чем в Delphi. Всё таки QTextBrowser великая вещь, хотя на правильное отображение сложных страниц я бы не рассчитывал... Оно в первую очередь для Qt'шной документации предназначено.
В дисгармонии со вселенной.
Спасибо сказали:
bosko
Сообщения: 12

Re: Qt & internet

Сообщение bosko »

И ещё вот что интересует: в делфи, если не ошибаюсь, в окне происходит открытие браузера (ие), а каким образом в qtextbrowser или подобных? насколько помню это такие вещи в себе, сами себе браузеры) могу ошибаться)
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Qt & internet

Сообщение eduard_pustobaev »

bosko писал(а):
26.01.2007 21:34
И ещё вот что интересует: в делфи, если не ошибаюсь, в окне происходит открытие браузера (ие), а каким образом в qtextbrowser или подобных? насколько помню это такие вещи в себе, сами себе браузеры) могу ошибаться)


QTextBrowser действительно сам себе browser, то есть именно он и занимается отображением html.
Отсюда и не всегда корректное отображение сложных страниц.
В дисгармонии со вселенной.
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Qt & internet

Сообщение Liksys »

Ну да, простенькие страницы на статическом html он умеет. Для более сложных надо свой класс разрабатывать с парсингом html
Спасибо сказали:
bosko
Сообщения: 12

Re: Qt & internet

Сообщение bosko »

Т.е. такого класса, который браузер реальный встраивал нет?
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Qt & internet

Сообщение eduard_pustobaev »

bosko писал(а):
27.01.2007 00:08
Т.е. такого класса, который браузер реальный встраивал нет?


Извините, но в Linux нет встроенных браузеров, а вот в KDE...
В Qt нет, а вот в kdelibs...
В дисгармонии со вселенной.
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Qt & internet

Сообщение Liksys »

А если там konqueror использовать? Чисто как внешнюю прогу?
Спасибо сказали:
bosko
Сообщения: 12

Re: Qt & internet

Сообщение bosko »

eduard_pustobaev писал(а):
27.01.2007 00:12
bosko писал(а):
27.01.2007 00:08

Т.е. такого класса, который браузер реальный встраивал нет?


Извините, но в Linux нет встроенных браузеров, а вот в KDE...
В Qt нет, а вот в kdelibs...


Можно хотя бы в двух словах о kdelibs, с чем едят? насколько понимаю, кде лишь графическая оболочка..

Liksys писал(а):
27.01.2007 00:21
А если там konqueror использовать? Чисто как внешнюю прогу?


Не совсем понял тебя) вызывать konqueror из проги через exec или как?)
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Qt & internet

Сообщение Liksys »

Да нет, QProcess`ом вызывать конкварор с параметрами.
вот пример, правда на Питоне:

Код: Выделить всё

HelpIndex="..."
WEB_BROWSER="konqueror" # или полный путь
        def Help(self) :
                proc = QProcess(None)
                proc.addArgument(WEB_BROWSER)
                proc.addArgument(HelpIndex)
                if not proc.start() :
                        QMessageBox.warning(None, "Error", "Cannot create process \""+WEB_BROWSER+" "+HelpIndex+"\"")
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Qt & internet

Сообщение eduard_pustobaev »

Liksys писал(а):
27.01.2007 00:21
А если там konqueror использовать? Чисто как внешнюю прогу?


system("firefox http://linuxforum.ru")

Обсуждалось:

С++: Как запустить браузер по умолчанию и открыть в нем страницу
В дисгармонии со вселенной.
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Qt & internet

Сообщение Liksys »

имхо - не совсем верный способ. Если уж юзать Qt, так использовать его классы. Тем более что system() блокирует вызывающую программу до завершения дочернего процесса, если в конце строки поставить &, то нельзя будет узнать код завершения. Да его и вообще не узнаешь, возвращается код доступа к интерпритатору.
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Qt & internet

Сообщение eduard_pustobaev »

Liksys писал(а):
27.01.2007 00:45
имхо - не совсем верный способ. Если уж юзать Qt, так использовать его классы. Тем более что system() блокирует вызывающую программу до завершения дочернего процесса, если в конце строки поставить &, то нельзя будет узнать код завершения. Да его и вообще не узнаешь, возвращается код доступа к интерпритатору.


Да не важно в принципе. Человеку вроде нужно, чтобы просмотр html был встроенным в его программу. Здесь скорее нужен khtml.
В дисгармонии со вселенной.
Спасибо сказали: