Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [Qt 4.6.2] QPainter, рамка внутри фигуры


Автор: alvi92 18.3.2010, 18:15
Всем привет. При рисовании прямоугольника, правая и нижняя рамки рисуются вне прямоугольника (правее и ниже). Т.е., если к примеру сначала нарисовать рамку прямоугольника, а потом залить область с этими-же координатами, то рамка будет выходить за эту область, ниже пример:
Код

p.drawRect(0, 0, cellSize().width(), cellSize().height()); // Рисуем рамку
p.fillRect(0, 0, cellSize().width(), cellSize().height(), Qt::red); // Заливаем

В результате:
user posted image
Думаю, из изображения видно, в чем проблема.
Меня интересует:
  • Почему так происходит?
  • Как отрисовывать рамку внутри прямоугольника (что бы она не вылазила за его область)?
Заранее спасибо! smile

Автор: SABROG 18.3.2010, 20:31
Вероятно размеры либо рамки, либо заливки нужно корректировать с учетом толщины пера (QPen?) рамки.

Автор: ufna 18.3.2010, 21:34
нужно корректировать размер рамки. В доках написано как точно рисуется рамка в зависимости от толщины (чтобы правильно указать изменение размеров)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)