Название: QGraphicView/scene, координаты
Отправлено: andrewshkovskii от Октябрь 14, 2009, 15:22
Есть некоторое не понимание взаимосвязи систем координат item,model,view. Вот такой вот код: void Model::setUpGraphicScene(QStandardItemModel *model,int size) { static QFont font("Times",9); static int x = - this->vrptr->geometry().width()/2;//this->vrptr -указатель на QGraphicView int y= - (this->vrptr->geometry().height()/2); QGraphicsItem * item; static QFontMetrics fn (font); static int yGrow = fn.height() -3; this->visualResultModel->clear(); item= visualResultModel->addText(model->horizontalHeaderItem(0)->text(),font); item->setPos(x,y); for(int i=1;i<size;++i) { item= visualResultModel->addText(model->horizontalHeaderItem(i)->text(),font); item->setPos(x,y+yGrow); y=item->pos().y(); } } Вроде как должен начать добавлять item в левый верхний угол, но почему-то , происходит вот так : (http://img245.imageshack.us/img245/4434/18943663.jpg) Что я делаю не так? (на рисунке , вьюха - это где порог близости..)
Название: Re: QGraphicView/scene
Отправлено: andrewshkovskii от Октябрь 14, 2009, 22:08
bump
Название: Re: QGraphicView/scene, координаты
Отправлено: andrewshkovskii от Октябрь 15, 2009, 00:00
void Model::setUpGraphicScene(QStandardItemModel *model,int size) { qDebug() << this->vrptr->rect(); qDebug() << this->visualResultModel->width() << this->visualResultModel->height(); static QFont font("Times",9); int x = -this->vrptr->geometry().width(); // x+=113; int y= - (this->vrptr->geometry().height()/2); QGraphicsItem * item; static QFontMetrics fn (font); static int yGrow = fn.height() -3; this->visualResultModel->clear(); item= visualResultModel->addText(model->horizontalHeaderItem(0)->text(),font); item->setPos(x,y); for(int i=1;i<size;++i) { item= visualResultModel->addText(model->horizontalHeaderItem(i)->text(),font); item->setPos(x,y+yGrow); y=item->pos().y(); } qDebug() << this->vrptr->rect(); qDebug() << this->visualResultModel->width() << this->visualResultModel->height(); }
QRect(0,0 607x277) //rect вьюхи до отображения текста 0 0//ширина и высота модели до отображения QRect(0,0 607x277) //после 716 258//после.. почему такое происходит?Просто сейчас, у меня рисуется в принципе нормально, но появляется скролл на вьюхе..
|