![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Создал себе тестовый примерчик для своих жалких потуг..
Сладер да Вьюха для сцены. при изменении значения слайдера вот что делаю : Раскрывающийся текст void MainWindow::out(int i) { qDebug() << i; QGraphicsLineItem * item = this->scene->addLine(0,0,0,10,*(new QPen())); item->setPos(-((ui->graphicsView->geometry().width()/2)-5),-((ui->graphicsView->geometry().height()/2)-20)); qDebug() << ui->graphicsView->geometry(); qDebug() << item->pos(); } Пробовал читать про http://doc.crossplatform.ru/qt/4.5.0/graphicsview.html - не понял, всеравно. Видимо мозгов не хватаит.. ![]() Так в чем проблема : 1. Координаты, при которых создается айтем - это что за координаты?к чему они относятся?Я так понимаю к Сцене(айтем на ней создается в координатах , где центр в 0.0), которая отображается во вью, где координаты 0,0 в левом верхнем углу..так? Так вот, почему при изменении позиции айтема таким образом , первый раз он отображается как задумывалось,а при следующим - вне видимой части вьюхи..? |
|
|
![]() |
Elfinit |
![]()
Сообщение
#2
|
Участник ![]() ![]() Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: ![]() ![]() ![]() |
Попробуй вместо geometry() использоваться rect(). У меня проблем при таком обращении не возникает.
|
|
|
Andrewshkovskii |
![]()
Сообщение
#3
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 13:42 |