Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: break от Январь 11, 2010, 02:18



Название: Как сделать Zoom как в QtDesigner
Отправлено: break от Январь 11, 2010, 02:18
Решение не прошу - хотя бы направление - что-то не нашел сам

В дизайнере в опциях есть Settings->Preferences->Forems->DefaultZoom - выставляется в процентах и работает в обе стороны...

Как такое сделать со своим QWidget-ом?


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: VisJiser от Январь 11, 2010, 02:53
это только предпросмотр, в ui ничего не заносится.
имеется в виду получить то же самое в криэйторе? инструменты-параметры-дизайнер-формы
зы: имхо


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: break от Январь 11, 2010, 03:01
При предпросмотре кнопки работают! Мне нужно свою рабочую форму заставить показываться на экране в увеличенном или уменьшенном виде - как это сделано там. Пока в исходниках нарыл только что что-то там grabWidget - не разобрался пока
Куезы: имхо - не понял вопроса но ответил


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: lit-uriy от Январь 11, 2010, 06:00
Типа как в Winampe "double size" ?


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: zenden от Январь 12, 2010, 00:17
ну очень грубая демонстрация:

Код
C++ (Qt)
#include <QGraphicsScene>
#include <QGraphicsView>
#include <QFormLayout>
#include <QGraphicsProxyWidget>
#include <QPushButton>
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
QPushButton *pushButton = new QPushButton("Do nothing");
QGraphicsScene *scene = new QGraphicsScene();
QGraphicsProxyWidget *proxy = scene->addWidget(this);
QGraphicsView *view = new QGraphicsView(scene);
view->show();
view->scale(2,2);
view->resize(300,300);
}

с помощью scene->addWidget можно добавлять что угодно, хоть всю вашу форму.
Но в Qt 4.6 данный код почему-то глючит, в предыдущих версиях все работает отлично.

Скрин из  QtCreator , в программе наблюдается то же самое


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: break от Январь 12, 2010, 04:57
Цитировать
Типа как в Winampe "double size" ?
- похоже, а реально как в дизайнере в предпросмотре

zenden - спасибо работает, глюки подтверждаются - вы имели ввиду артефакты при прокрутке скроллом? (у меня такие глюки есть и действительно в Qt 4.5 их нет)



Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: break от Январь 12, 2010, 21:16
Создал ветку в баг трекере - вроде повтора не нашел...
http://bugreports.qt.nokia.com/browse/QTBUG-7296

Скрины косяков которые у меня - выкладываю - также компилируемый код (по сути код кот. дал zenden)


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: zenden от Январь 13, 2010, 17:17
у меня в винде помимо полосок при прокрутке совсем другой баг - при использовании стиля WinXP текст увеличивается, а декорации контролов - нет. А в qt4.5 все работает нормально.


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: break от Январь 13, 2010, 19:52
А ты не мог бы это сфоткать и в качестве комментария на английском написать под моим багом в баг-трекере? Или новый issue создать?


Название: Re: Как сделать Zoom как в QtDesigner
Отправлено: break от Апрель 09, 2010, 23:55
Тролли починили данный баг отрисовки  ;)

http://bugreports.qt.nokia.com/browse/QTBUG-7296