我正面臨使用QPainter繪製不同顏色的線和文本的問題。我正在使用下面的一段代碼來實現這一點,但它不工作。這兩行和文本均使用繪製文本的顏色集繪製。QPainter :: drawLine和QPainter :: drawText在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);
}
}
我將如何爲繪製線和文本設置不同的顏色。有什麼建議麼。謝謝。
在你第一次調用setPen(),您不使用創建略高於筆。這是在您複製/粘貼時添加的錯字嗎?在最後一個drawText() – Leiaz 2012-02-28 15:06:05
中還有一個額外的括號,爲什麼在每次迭代中重新創建'QPen'? – triclosan 2012-02-28 16:16:50
嗨三氯生,我想分別設置不同的顏色繪製線條和繪製文本。 – user1182217 2012-02-29 05:51:26