Russian Qt Forum

Qt => Общие вопросы => Тема начата: gashock от Сентябрь 19, 2007, 18:21



Название: Создание браузера в Qt
Отправлено: gashock от Сентябрь 19, 2007, 18:21
Собственно сабж.
Нужно создать браузер с помощью Qt. Идея такая: в главном окне есть меню, тулбар, док-виджет с деревом навигации. Ну и собственно всю оставшуюся часть должен занимать html-браузер. Начал пробовать QTextBrowser, но он отображает только примитивный html, а мне нужно полноценное отображение.
Так вот, реально ли сделать такое с помощью (я так думаю) ActiveQt под Win32, а под Linux использовать что-то более для нее родное. Можно было бы через Desktop-сервисы попробовать, но очень охота открывать страницы в этом же окне. Эта аппликуха должна уметь корректно работать как в Windows так и в Linux. Подскажите, плз, направление поисков или может кто-то сталкивался с подобным и уже есть опыт реализации...

З.Ы. Qt 4.3.1 (Windows XP SP2, Mandriva Linux 2007)


Название: Re: Создание браузера в Qt
Отправлено: Пантер от Сентябрь 19, 2007, 18:25
Как мне кажется, нужно наследоваться от QTextBrowser и наворачивать его. Если использовать ActiveQt (т.е. насколько я понимаю это встраивание в прогу ослика) то зачем вообще делать проект? Допустим, мне нравится Опера из-за того, что в ней все компоненты (насколько я знаю) написаны с нуля, т.е. не стандартные. Это большой плюс.


Название: Re: Создание браузера в Qt
Отправлено: ритт от Сентябрь 19, 2007, 19:12
как мне кажется, текстбравзер не подойдёт под "нормальный хтмл-бравзер"

у троллей есть подпроект "WebKit" - он здоровый, зато полноценный. жс*/ецмс*/дом*/(х)хтмл/цсс и т.д., и т.п.
с ядра этого проекта когда-то начинался конкверрор!

могу сцылочку дать, если сам не найдёшь


Название: Re: Создание браузера в Qt
Отправлено: gashock от Сентябрь 20, 2007, 07:10
Спасибо. Буду разбираться. Как что-то получиться обязательно поделюсь опытом


Название: Re: Создание браузера в Qt
Отправлено: gashock от Сентябрь 20, 2007, 10:06
могу сцылочку дать, если сам не найдёшь

Ссылочку сам нашел. Вот только у меня не получается вытянуть этот WebKit себе на машину из svn. По той ссылке, которая есть на оффсайте троллей можно просматривать только отдельные файлы. Как-то не правильно так скачивать. Не подскажете как мне под Виндой поднять клиента svn для скачивания WebKit'а?
З.Ы. Может вопрос и глупый но с svn под Виндами не работал... Сорри...


Название: Re: Создание браузера в Qt
Отправлено: WW от Сентябрь 20, 2007, 10:25
Идешь сюда (http://subversion.tigris.org) и качаешь инсталятор под винду. А потом, для удобства, сюда (http://tortoisesvn.net) и получаешь интеграцию в проводник. Очччень удобно.


Название: Re: Создание браузера в Qt
Отправлено: gashock от Сентябрь 20, 2007, 10:47
А никто не в курсе, можно ли разработать виджет, который будет использован для просмотра html-контента с помощью desktop-сервисов? И не только html, а, например, pdf. Т.е. под виндами чтобы использовался акробат-ридер, а под KDE, например, KPdf...


Название: Re: Создание браузера в Qt
Отправлено: Вячеслав от Сентябрь 20, 2007, 10:59
Идешь сюда (http://subversion.tigris.org) и качаешь инсталятор под винду. А потом, для удобства, сюда (http://tortoisesvn.net) и получаешь интеграцию в проводник. Очччень удобно.
Для второго первое не надо ;)


Название: Re: Создание браузера в Qt
Отправлено: ритт от Сентябрь 20, 2007, 11:06
> А никто не в курсе, можно ли разработать виджет...

это называется KParts :)

под вендами такой виджет не получишь, т.к. контейнер будет открываться в новом окне


Название: Re: Создание браузера в Qt
Отправлено: gashock от Сентябрь 20, 2007, 11:09
это называется KParts :)
А как насчет Desktop-services?


Название: Re: Создание браузера в Qt
Отправлено: WW от Сентябрь 20, 2007, 11:28
Для второго первое не надо ;)
Если не поднимать у себя svn - то согласен.


Название: Re: Создание браузера в Qt
Отправлено: Вячеслав от Сентябрь 20, 2007, 11:44
Для второго первое не надо ;)
Если не поднимать у себя svn - то согласен.

Если не поднимать у себя svn как сервис ;) с локальными репами черепах на ура работает ;)


Название: Re: Создание браузера в Qt
Отправлено: WW от Сентябрь 20, 2007, 11:48
Если не поднимать у себя svn как сервис ;) с локальными репами черепах на ура работает ;)
Я думаю - мы поняли друг друга.  :)


Название: Re: Создание браузера в Qt
Отправлено: ритт от Сентябрь 20, 2007, 12:53
это называется KParts :)
А как насчет Desktop-services?


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

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

насколько я знаю, кутэ использует оле (если вендовая сборка) - возможно, есть какой-нть нативный провайдер


Название: Re: Создание браузера в Qt
Отправлено: ритт от Сентябрь 20, 2007, 12:55
могу добавить ещё, что через активкутэ можно к своему приложение подключить движок осла, например.
но это сделает ваше приложение осло-зависымым

а вот ВэбКит - полностью кроссплатформенный


Название: Re: Создание браузера в Qt
Отправлено: gashock от Сентябрь 20, 2007, 15:15
могу сцылочку дать, если сам не найдёшь
Давайте, наверное, лучше прямую ссылочку для загрузки ВебКита. Если, конечно, есть такая...


Название: Re: Создание браузера в Qt
Отправлено: gashock от Сентябрь 20, 2007, 17:51
Отзовитесь, кто имеет опыт внедрения WebToolkit в свои Qt-приложения! Буду очень благодарен


Название: Re: Создание браузера в Qt
Отправлено: ритт от Сентябрь 20, 2007, 20:40
у проекта нет сцылочки на архив - есть только сцылочка не репозитарий свн
проект весит до хрена - качаться будет долго :)


Название: Re: Создание браузера в Qt
Отправлено: vaprele07 от Сентябрь 21, 2007, 03:40
был проект такой QGeckoEmbed раньше


Название: Re: Создание браузера в Qt
Отправлено: LLlyPuK.ua от Сентябрь 25, 2007, 16:15
Меня вот интересует тот же вопрос. Помогите открывать хтмл страницу использующую  цсс и ява-скрипт. Дайте плиз ссылку на исходники как можно сделать подобный браузер кросплатформенным. Думал надо копать в сторону вебкит и кхтмл, но ничего понятного ненашел  :'(


Название: Re: Создание браузера в Qt
Отправлено: sascha3115 от Апрель 25, 2013, 20:44
Что я сделал не так?


Название: Re: Создание браузера в Qt
Отправлено: Bepec от Апрель 25, 2013, 20:48
В чужой некро теме написали левый пост. Это плохо.

PS выкладывайте не скрин, выкладывайте код.


Название: Re: Создание браузера в Qt
Отправлено: sascha3115 от Апрель 25, 2013, 21:02
хорошо. Пытаюсь написать простой браузер но не пойму что за ошибка. Помогите пожалуйста
Код mainwindow.h:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT
   
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
   
private slots:
    void on_lineEdit_returnPressed();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
Код mainwindow.cpp:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtWebKit/QtWebKit>
#include <QtWebKitWidgets/qwebview.h>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_lineEdit_returnPressed()
{
    QString url_str = this->ui->lineEdit->text();
    if (!url_str.startsWith("http://"))
    {
    url_str = "http://"+url_str;
    }
    QUrl url(url_str);
    this->ui->webView->load(url);

}


Название: Re: Создание браузера в Qt
Отправлено: Bepec от Апрель 25, 2013, 21:05
1) уйдите  из этой темы :D
2) создайте новую тему.
3) пользуйтесь тегом КОД. Кнопочка [ # ] в редакторе сообщений.


Название: Re: Создание браузера в Qt
Отправлено: _OLEGator_ от Апрель 25, 2013, 21:22
Это он мне одному в личку эту портянку кинул?


Название: Re: Создание браузера в Qt
Отправлено: Bepec от Апрель 25, 2013, 21:59
Ага. :D Ты вызываешь доверие :D


Название: Re: Создание браузера в Qt
Отправлено: _OLEGator_ от Апрель 25, 2013, 22:06
Только у меня от этого смешанные чувства =)