LINUX.ORG.RU

Qt растягивание объекта

 , ,


0

2

Сделал GUI в дизайнере, но WebView не хочет растягиваться по x до максимума. Geomentry зафиксировано(изменяется компановщиком). Написал вот такую строчку, как и ожидалось, не работает:

ui->webView->setGeometry(0, ui->webView->geometry().y(), width(), ui->webView->geometry().height());

Думаю по коду понятно, что я хочу сделать. Растянуть WebView на максимально возможную ширину. Например, как в Firefox, а то у меня по 5 px с каждой стороны пустые.

З.Ы. Валяюсь в стационарке, квоту(трафик) давно превысил, в гугле толком и не поискал, некоторые сайты даже и не загружаются, всего несколько КБайт / сек =(

Ответ на: комментарий от visual

use vboxlayout

Уже использую.

see padding

Можно поподробнее? А то я что-то не вижу, где он. К чему вообще обращатся с padding'ом?

Human-source
() автор топика

Поддерживаю всех, кто высказался против дизайнера.

Мышевозы должны страдать.

З.Ы. Валяюсь в стационарке, квоту(трафик) давно превысил, в гугле толком

Есть же QtAssistant, не?

Итого: напиши код вместо формы, поиграйся с layout, setcontentsmargins и sizePolicy.

unfo ★★★★★
()
Ответ на: комментарий от dib2

использовать QtDesigner нельзя, потому что .... ?

Код можно изменить только после qmake, в его выхлопах, после генерации привычного нам кода из ".ui" файла. Но большую часть (или даже всё) можно исправить в конструкторе, в исходном ".cpp" файле...

Human-source
() автор топика
Ответ на: комментарий от Human-source

Код можно изменить только после qmake, в его выхлопах, после генерации привычного нам кода из ".ui" файла. Но большую часть (или даже всё) можно исправить в конструкторе, в исходном ".cpp" файле...

Ничего не понял.

Полностью отказался от дизайнера, когда не смог изменить в нем видимость у QDockWidget.

unfo ★★★★★
()
Ответ на: комментарий от Human-source

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

dib2 ★★★★★
()
Ответ на: комментарий от unfo

Ничего не понял.

На nokiadevru (YouTube) были курсы qt, там всё описывается и показывается.

Попробуй сделать qmake проекта с ui. Должен будет появиться файл, который содержит код, его можно изменить, а потом уже выполнить make.

Полностью отказался от дизайнера

Мне он тоже особо не нравиться из-за вот таких моментов, но если нужно сделать что-то быстро, или что-то не сложное, то для он будет очень полезен (для тех, кто уже давно кодит на qt это не такое большое преимущество, может быть даже минус...).

Human-source
() автор топика
Ответ на: комментарий от Human-source

На nokiadevru (YouTube) были курсы qt, там всё описывается и показывается.

Попробуй сделать qmake проекта с ui. Должен будет появиться файл, который содержит код, его можно изменить, а потом уже выполнить make.

Пишу на Qt уже лет пять, спасибо. qmake не пользуюсь. Про то, как работает uic, в курсе.

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

P.S.

Мне он тоже особо не нравиться из-за вот таких моментов, но если нужно сделать что-то быстро, или что-то не сложное,

Проще написать десяток строк, которые будут 100% работать.

unfo ★★★★★
()
Ответ на: комментарий от annulen

В коде нет свойства padding, setPadding, а в дизайнере нет лайаута =(

Или свойство по другому называется? Сейчас в доках ищю.

Human-source
() автор топика
    void setupUi(QMainWindow *MainWindow)
    {
        centralwidget = new QWidget(MainWindow);
        horizontalLayout = new QHBoxLayout(centralwidget);
        kwebview = new KWebView(centralwidget);

        horizontalLayout->addWidget(kwebview);

        MainWindow->setCentralWidget(centralwidget);

        retranslateUi(MainWindow);
    } // setupUi

Наверное понятно, набросал в дизайнере, что в убунте что в федоре нет виджета webview в дизайнере :D

bhfq ★★★★★
()
Последнее исправление: bhfq (всего исправлений: 2)
Ответ на: комментарий от bhfq

Спасибо, проблема уже решена.

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

QT      += core gui widgets network webkit webkitwidgets

#include <QtWebKit>
#include <QtWebKitWidgets/QWebView>
Human-source
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.