Господа, суть проблемы: мне необходимо создать QGraphicsItem, который будет отображать надписи к графическим объектам. Надпись рисуется на фоне прямоугольника, размер которого зависит от геометрического размера текста. Как можно определить размер текста во время создания объекта-надписи? Если определять в методе paint(), то при первой прорисовке получается коряво... Сейчас я это делаю так: в методе paint() родителя (тоже QGraphicsItem) с помощью метода painter->boundingRect() определяю размер текста и передаю его потомку, дабы предок рисуется раньше, чем потомок-надпись. Вроде работает, но выглядит ужасно коряво. Карта большая, объектов много, надписей соответственно тоже много, приходится писать такую фигню для каждого объекта... Нет ли какого-то более изящного и удобного решения данной проблемы? Заранее благодарен.
|