Qt cpp QPainter 绘制透明度为99.9%的背景
时间: 2023-07-10 16:15:33 浏览: 330
要在 Qt/C++ 中使用 QPainter 绘制透明度为 99.9% 的背景,可以使用 setOpacity() 函数将绘制操作的透明度设置为 0.999,然后使用 drawRect() 函数绘制一个与绘图区域大小相同的矩形。
下面是一个示例代码:
```cpp
void MyWidget::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
painter.setOpacity(0.999);
painter.setBrush(QBrush(QColor(255, 255, 255, 255), Qt::SolidPattern));
painter.drawRect(rect());
}
```
上述代码中,使用 setOpacity() 函数将绘制操作的透明度设置为 0.999,也可以直接传入一个浮点数参数。然后使用 setBrush() 函数设置绘制矩形的画刷,这里使用了一个白色的画刷,绘制实心矩形。最后使用 drawRect() 函数绘制一个与绘图区域大小相同的矩形。
相关问题
QPainter 绘制透明度为99.9%的背景
要在 QPainter 中绘制透明度为 99.9% 的背景,可以使用 setOpacity() 函数将绘制操作的透明度设置为 0.999,然后使用 drawRect() 函数绘制一个与绘图区域大小相同的矩形。
下面是一个示例代码:
```python
from PyQt5.QtGui import QPainter, QColor, QBrush
from PyQt5.QtCore import Qt
# 在 paintEvent 事件处理函数中使用 QPainter 绘制透明度为 99.9% 的背景
def paintEvent(self, event):
painter = QPainter(self)
painter.setOpacity(0.999)
painter.setBrush(QBrush(QColor(255, 255, 255, 255), Qt.SolidPattern))
painter.drawRect(self.rect())
```
上述代码中,使用 setOpacity() 函数将绘制操作的透明度设置为 0.999,也可以直接传入一个浮点数参数。然后使用 setBrush() 函数设置绘制矩形的画刷,这里使用了一个白色的画刷,绘制实心矩形。最后使用 drawRect() 函数绘制一个与绘图区域大小相同的矩形。
Qt cpp QPainter绘制QPolygonF
要在Qt C++中使用QPainter绘制QPolygonF,可以按照以下步骤进行:
1. 创建QPainter对象并传递要绘制的绘图设备的指针,例如QPixmap或QImage。
2. 使用QPen和QBrush设置绘制多边形的线条和填充颜色。
3. 使用QPainter的drawPolygon方法绘制多边形。
下面是一个示例代码段,演示如何绘制一个简单的QPolygonF:
```c++
QPainter painter;
painter.begin(&pixmap); // pixmap是一个QPixmap对象,可以替换为其他绘图设备
painter.setPen(QPen(Qt::red, 2));
painter.setBrush(QBrush(Qt::green));
QPolygonF polygon;
polygon << QPointF(10, 10) << QPointF(50, 10) << QPointF(50, 50) << QPointF(10, 50);
painter.drawPolygon(polygon);
painter.end();
```
在此示例中,我们创建了一个QPainter对象,并将其绑定到一个QPixmap对象上。然后,我们设置了红色线条和绿色填充颜色,并创建了一个包含四个点的QPolygonF对象。最后,我们使用QPainter的drawPolygon方法绘制多边形。
希望这可以帮助你开始绘制QPolygonF!
阅读全文