На этом шаге рассмотрим рисование сплошных прямоугольников.
Qt содержит два метода для рисования прямоугольников без контурных линий: fillRect() и eraseRect(). Их внешний вид задается только кистью.
В метод fillRect() передаются пять параметров. Первые четыре параметра задают координаты (x, y) и размеры (ширина, высота) прямоугольника. Пятый параметр задает кисть.
В метод eraseRect() передаются только четыре параметра, задающие позицию и размеры прямоугольной области. Для ее заполнения используется фон, установленный в виджете. Таким образом, вызов этого метода эквивалентен вызову fillRect() с пятым параметром - значением, возвращаемым методом paletteBackgroundColor().
Рассмотрим пример использования методов fillRect() и eraseRect(), результат показан на рис.1.
Рис.1. Прямоугольник
QPainter painter(this); QBrush brush(Qt::red, Qt::CrossPattern); painter.fillRect(10, 10, 100, 100, brush); painter.eraseRect(20, 20, 80, 80);
Файлы приложения можно взять здесь.
На следующем шаге рассмотрим рисование заполненных фигур.