Tôi đang gặp sự cố khi vẽ đường kẻ và văn bản có màu khác nhau bằng cách sử dụng QPainter. Tôi đang sử dụng đoạn mã sau để đạt được điều này nhưng nó không hoạt động. Cả hai dòng và văn bản đều được vẽ bằng cách sử dụng bộ màu để vẽ Văn bản.QPainter :: drawLine và QPainter :: drawText với vấn đề màu sắc khác nhau trong Qt
void MyWidget::drawHorLinesWithText(QPainter & painter, const QRect & rect)
{
for(int i=0; i < 5; i++)
{
QPen penHLines(QColor("#0e5a77"), 1, Qt::DotLine, Qt::FlatCap, Qt::RoundJoin);
painter.setPen(penHLines);
painter.drawLine(10, 50 - (5*(i+1)), 200, 50 - (5*(i+1)));
QString strNumber = QString::number((2)*(i+1));
painter.setFont(QFont("Arial", 8, QFont::Bold));
//QBrush brush(QColor("#00e0fc"));
//painter.setBrush(brush);
QPen penHText(QColor("#00e0fc"));//Here lines are also drawn using this color
painter.setPen(penHText);
painter.drawText(5, 50 - (5*(i+1)) - 10), 20, 30, Qt::AlignHCenter | Qt::AlignVCenter,
strNumber);
}
}
Làm cách nào để đặt các màu sắc khác nhau để vẽ đường và nội dung. Bất kỳ đề xuất. Cảm ơn.
Trong cuộc gọi đầu tiên của bạn để setPen(), bạn không sử dụng bút được tạo ra chỉ ở trên. Đó là một lỗi đánh máy đã được thêm vào khi bạn sao chép/dán vào đây? Ngoài ra còn có một dấu ngoặc đơn phụ trong drawText cuối cùng của bạn() – Leiaz
tại sao tái tạo 'QPen's tại mỗi lần lặp? – triclosan
Hi triclosan, tôi muốn đặt các màu khác nhau để vẽ các đường và vẽ các văn bản riêng biệt. – user1182217