crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

rp80
  опции профиля:
сообщение 10.9.2011, 13:07
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 36
Регистрация: 10.9.2011
Пользователь №: 2860

Спасибо сказали: 0 раз(а)




Репутация:   0  


Два нубских вопроса. Сильно не бейте.

1. Как ограничить область рисования(по идее setSceneRect, но он ожидаемым образом не работает)
2. Как зафиксировать 0,0 в центре видимой области graphicsView.



вот код:
  
  mgw = MyGW::_self(this); //переопределенный graphView
    ui->setupUi(this);
    this->resize(400,400);// ресайз MainWindow
    ui->verticalLayout->addWidget(mgw);
    scene.setSceneRect(-200,-200,200,200);
    gi = scene.addText("AAss ASA");
    mgw->setScene(&scene);
    scene.setBackgroundBrush(QBrush(QColor("red")));

    QPen axisPen;
    axisPen.setColor(QColor("black"));
    axisPen.setWidth(5);
    scene.addLine(0,0,800,0,axisPen);

Ожидается: 0,0 в центре видимой части gView, область отрисовки квадрат со стороной 400 и красным фоном. Линия выходит из центра и обрезается на 200 пикселях справа.

В итоге имеем: точка 0,0 находится в правом нижнем углу видимой области graphView (288 пикселей от левого края, 87 от правого. 255 от верхнего, 55 от нижнего ), линия длиной все 800 пикселей, выходит за пределы видимой части view (можно увидеть меняя размер исходного окна).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 8.6.2025, 23:29