Поддерживаемые члены Qt 3 класса QPainterОписанные ниже члены класса являются частью слоя поддержки Qt 3. Они введены для поддержки старого кода в Qt 4. Мы советуем не использовать их во вновь создаваемом коде. Открытые функции
Статические открытые члены
Описание функций-членовconst QColor & QPainter::backgroundColor () constВместо этого используйте background() и QBrush::color(). Например, если у вас есть код QColor myColor = backgroundColor(); вы можете записать его в виде QColor myColor = background().color(); Обратите внимание на то, что фон может быть сложной кистью, такой как текстура или градиент. Смотрите также setBackgroundColor(). bool QPainter::begin ( QPaintDevice * device, const QWidget * init )Вместо этого используйте begin(). Если устройство рисования device - это QWidget, то QPainter автоматически инициализируется после установок виджета. В противном случае, вы должны вызывать функцию initFrom() для иницализации пера рисовальщика, фона и шрифта такими же как и для других виджетов. Например, если у вас есть код QPainter painter(this); painter.begin(device, init); вы можете записать его в виде QPainter painter(this); painter.begin(device); painter.initFrom(init); QRect QPainter::boundingRect ( const QRect & rectangle, int flags, const QString & text, int length )Возвращает ограничивающий прямоугольник для заданной длины length текста text, ограниченного предоставленным прямоугольником rectangle. Вместо этого используйте boundingRect() в сочетании с QString::left(). Например, если у вас есть код QRect rectangle = boundingRect(rect, flags, text, length); вы можете записать его в виде QRect rectangle = boundingRect(rect, flags, text.left(length)); QRect QPainter::boundingRect ( int x, int y, int width, int height, int flags, const QString & text, int length )Возвращает ограничивающий прямоугольник для заданной длины length текста text, ограниченного прямоугольником, который начинается в точке (x, y) с заданной шириной width и высотой height. Вместо этого используйте boundingRect() в сочетании с QString::left(). Например, если у вас есть код QRect rectangle = boundingRect(x, y, width, height, flags, text, length); вы можете записать его в виде QRect rectangle = boundingRect(x, y, width, height, flags, text.left(length)); void QPainter::drawConvexPolygon ( const QPolygonF & polygon, int index, int count = -1 )Это перегруженная функция. Вместо этого используйте drawConvexPolygon() в сочетании с QPolygonF::constData(). Например, если у вас есть код QPainter painter(this); painter.drawConvexPolygon(polygon, index, count); вы можете записать его в виде int pointCount = (count == -1) ? polygon.size() - index : count; QPainter painter(this); painter.drawConvexPolygon(polygon.constData() + index, pointCount); void QPainter::drawConvexPolygon ( const QPolygon & polygon, int index, int count = -1 )Это перегруженная функция. Использйте взамен drawConvexPolygon() в сочетании с QPolygon::constData(). Например, если у вас есть код QPainter painter(this); painter.drawConvexPolygon(polygon, index, count); вы можете записать его в виде int pointCount = (count == -1) ? polygon.size() - index : count; QPainter painter(this); painter.drawConvexPolygon(polygon.constData() + index, pointCount); void QPainter::drawCubicBezier ( const QPolygon & controlPoints, int index = 0 )Рисует кривую Безье третьего порядка, определённую в controlPoints, начиная с controlPoints[index] (index defaults to 0). Точки после controlPoints[index + 3] игнорируются. Если контрольных точек не хватает, то ничего не происходит. Использйте взамен strokePath(). Например, если у вас есть код QPainter painter(this); painter.drawCubicBezier(controlPoints, index) вы можете записать его в виде QPainterPath path; path.moveTo(controlPoints.at(index)); path.cubicTo(controlPoints.at(index+1), controlPoints.at(index+2), controlPoints.at(index+3)); QPainter painter(this); painter.strokePath(path, painter.pen()); void QPainter::drawLineSegments ( const QPolygon & polygon, int index = 0, int count = -1 )Рисует count отдельных линий из точек, определённых в polygon, начиная с polygon[index] (index по умолчанию 0). Если count равно -1 (по умолчанию), то используются все точки до конца массива. Вместо этого используйте drawLines() в сочетании с QPolygon::constData(). Например, если у вас есть код QPainter painter(this); painter.drawLineSegments(polygon, index, count); вы можете записать его в виде int lineCount = (count == -1) ? (polygon.size() - index) / 2 : count; QPainter painter(this); painter.drawLines(polygon.constData() + index * 2, lineCount); void QPainter::drawPoints ( const QPolygon & polygon, int index, int count = -1 )Это перегруженная функция. Рисует count точек в векторе polygon, начиная с index, используя текущее перо. Вместо этого используйте drawPoints() в сочетании с QPolygon::constData(). Например, если у вас есть код QPainter painter(this); painter.drawPoints(polygon, index, count); вы можете записать его в виде int pointCount = (count == -1) ? polygon.size() - index : count; QPainter painter(this); painter.drawPoints(polygon.constData() + index, pointCount); void QPainter::drawPolygon ( const QPolygonF & polygon, bool winding, int index = 0, int count = -1 )Это перегруженная функция. Вместо этого используйте drawPolygon() в сочетании с QPolygonF::constData(). Например, если у вас есть код QPainter painter(this); painter.drawPolygon(polygon, winding, index, count); вы можете записать его в виде int pointCount = (count == -1) ? polygon.size() - index : count; int fillRule = winding ? Qt::WindingFill : Qt::OddEvenFill; QPainter painter(this); painter.drawPolygon( polygon.constData() + index, pointCount, fillRule); void QPainter::drawPolygon ( const QPolygon & polygon, bool winding, int index = 0, int count = -1 )Это перегруженная функция. Вместо этого используйте drawPolygon() в сочетании с QPolygon::constData(). Например, если у вас есть код QPainter painter(this); painter.drawPolygon(polygon, winding, index, count); вы можете записать его в виде int pointCount = (count == -1) ? polygon.size() - index : count; int fillRule = winding ? Qt::WindingFill : Qt::OddEvenFill; QPainter painter(this); painter.drawPolygon( polygon.constData() + index, pointCount, fillRule); void QPainter::drawPolyline ( const QPolygon & polygon, int index, int count = -1 )Это перегруженная функция. Рисует ломаную, определённую в count линиях заданного polygon, начиная с index (index по умолчанию 0). Вместо этого используйте drawPolyline() в сочетании с QPolygon::constData(). Например, если у вас есть код QPainter painter(this); painter.drawPolyline(polygon, index, count); вы можете записать его в виде int pointCount = (count == -1) ? polygon.size() - index : count; QPainter painter(this); painter.drawPolyline(polygon.constData() + index, pointCount); void QPainter::drawText ( int x, int y, const QString & text, int pos, int length )Вместо этого используйте drawText() в сочетании с QString::mid(). Например, если у вас есть код QPainter painter(this); painter.drawText(x, y, text, pos, length); вы можете записать его в виде QPainter painter(this); painter.drawText(x, y, text.mid(pos, length)); void QPainter::drawText ( const QPoint & point, const QString & text, int pos, int length )Вместо этого используйте drawText() в сочетании с QString::mid(). Например, если у вас есть код QPainter painter(this); painter.drawText(point, text, pos, length); вы можете записать его в виде QPainter painter(this); painter.drawText(point, text.mid(pos, length)); void QPainter::drawText ( int x, int y, const QString & text, int length )Вместо этого используйте drawText() в сочетании с QString::left(). Например, если у вас есть код QPainter painter(this); painter.drawText(x, y, text, length); вы можете записать его в виде QPainter painter(this); painter.drawText(x, y, text.left(length)); void QPainter::drawText ( const QPoint & point, const QString & text, int length )Вместо этого используйте drawText() в сочетании с QString::left(). Например, если у вас есть код QPainter painter(this); painter.drawText(point, text, length); вы можете записать его в виде QPainter painter(this); painter.drawText(point, text.left(length)); void QPainter::drawText ( const QRect & rectangle, int flags, const QString & text, int length, QRect * br = 0 )Вместо этого используйте drawText() в сочетании с QString::left(). Например, если у вас есть код QPainter painter(this); painter.drawText(rectangle, flags, text, length, br ); вы можете записать его в виде QPainter painter(this); painter.drawText(rectangle, flags, text.left(length), br ); void QPainter::drawText ( int x, int y, int width, int height, int flags, const QString & text, int length, QRect * br = 0 )Вместо этого используйте drawText() в сочетании с QString::left(). Например, если у вас есть код QPainter painter(this); painter.drawText(x, y, width, height, flags, text, length, br ); вы можете записать его в виде QPainter painter(this); painter.drawText(x, y, width, height, flags, text.left(length), br ); bool QPainter::hasViewXForm () constВместо этого используйте viewTransformEnabled(). bool QPainter::hasWorldXForm () constВместо этого используйте worldMatrixEnabled(). void QPainter::redirect ( QPaintDevice * pdev, QPaintDevice * replacement ) [static]Вместо этого используйте setRedirected(). QPaintDevice * QPainter::redirect ( QPaintDevice * pdev ) [static]Вместо этого используйте redirected(). void QPainter::resetXForm ()Вместо неё используйте resetTransform(). void QPainter::setBackgroundColor ( const QColor & color )Вместо неё используйте setBackground(). Смотрите также backgroundColor(). void QPainter::setViewXForm ( bool enabled )Вместо этого используйте setViewTransformEnabled(). Смотрите также hasViewXForm(). void QPainter::setWorldXForm ( bool enabled )Вместо неё используйте setWorldMatrixEnabled(). Смотрите также hasWorldXForm(). qreal QPainter::translationX () constВместо этого используйте worldTransform() в сочетании с QTransform::dx(). Например, если у вас есть код QPainter painter(this); qreal x = painter.translationX(); вы можете записать его в виде QPainter painter(this); qreal x = painter.worldTransform().dx(); qreal QPainter::translationY () constВместо этого используйте worldTransform() в сочетании с QTransform::dy(). Например, если у вас есть код QPainter painter(this); qreal y = painter.translationY(); вы можете записать его в виде QPainter painter(this); qreal y = painter.worldTransform().dy(); QPoint QPainter::xForm ( const QPoint & point ) constВместо этого используйте combinedTransform(). QRect QPainter::xForm ( const QRect & rectangle ) constЭто перегруженная функция. Используйте combinedTransform() взамен этой функции и вызывайте mapRect() на результате, чтобы получить QRect. QPolygon QPainter::xForm ( const QPolygon & polygon ) constЭто перегруженная функция. Вместо этого используйте combinedTransform(). QPolygon QPainter::xForm ( const QPolygon & polygon, int index, int count ) constЭто перегруженная функция. Вместо этого используйте combinedTransform() в сочетании с QPolygon::mid(). Например, если у вас есть код QPainter painter(this); QPolygon transformed = painter.xForm(polygon, index, count) вы можете записать его в виде QPainter painter(this); QPolygon transformed = polygon.mid(index, count) * painter.combinedTransform(); QPoint QPainter::xFormDev ( const QPoint & point ) constЭто перегруженная функция. Вместо этого используйте combinedTransform() в сочетании с QTransform::inverted(). Например, если у вас есть код QPainter painter(this); QPoint transformed = painter.xFormDev(point); вы можете записать его в виде QPainter painter(this); QPoint transformed = point * painter.combinedTransform().inverted(); QRect QPainter::xFormDev ( const QRect & rectangle ) constЭто перегруженная функция. Вместо этого используйте combinedTransform() в сочетании с QTransform::inverted(). Например, если у вас есть код QPainter painter(this); QRect transformed = painter.xFormDev(rectangle); вы можете записать его в виде QPainter painter(this); QRegion region = QRegion(rectangle) * painter.combinedTransform().inverted(); QRect transformed = region.boundingRect(); QPolygon QPainter::xFormDev ( const QPolygon & polygon ) constЭто перегруженная функция. Вместо этого используйте combinedTransform() в сочетании с QTransform::inverted(). Например, если у вас есть код QPainter painter(this); QPolygon transformed = painter.xFormDev(rectangle); вы можете записать его в виде QPainter painter(this); QPolygon transformed = polygon * painter.combinedTransform().inverted(); QPolygon QPainter::xFormDev ( const QPolygon & polygon, int index, int count ) constЭто перегруженная функция. Вместо этого используйте combinedTransform() в сочетании с QPolygon::mid() и QTransform::inverted(). Например, если у вас есть код QPainter painter(this); QPolygon transformed = painter.xFormDev(polygon, index, count); вы можете записать его в виде QPainter painter(this); QPolygon transformed = polygon.mid(index, count) * painter.combinedTransform().inverted();
|
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |