2013-05-07 4 views
0

Я создаю аналоговые часы в QT-Creater 5, теперь я хочу нарисовать цифры на экране, но он не работает?QT - QPainter.DrawText не рисует текст

painter.drawText(QPoint(50, 50), "12"); 

i absolutly не вижу смысла, почему он не работает. когда я заменяю эту строку в моем коде .drawEllipse, он отлично работает. Таким образом, положение/цвет не может быть проблемой, кроме drawText не будет использовать setBrush() цвет

Кто-нибудь знает, как правильно нарисовать текст на экране с помощью QPainter?

//previous code only draws blue ellipses with white background 
QColor secondColor(240,0,0); 

painter.setPen(Qt::NoPen); 
painter.setBrush(secondColor); 
painter.save(); 

QFont font=painter.font() ; 
font.setPointSize(18); 
painter.setFont(font); 
painter.drawText(QPoint(50, 50), "12"); 

потому, что его в конце paintEvent не может быть преувеличен

+1

Может быть, ваш цвет пера. Может быть, ты рисуешь что-то сверху. Нет никакого способа узнать, где ваша ошибка без фрагмента кода, который воспроизводит вашу проблему. – Mat

+0

Я добавил некоторый код, но его в конце paintEvent, поэтому проблема с перегрузкой не может быть проблемой. цвет красный, также нет проблем, потому что все остальные белые – Postback

+2

'painter.setPen (Qt :: NoPen);'? – Mat

ответ

2

установки ручки в стиле над

painter.setPen(colorStyle); 

решить эту проблему. спасибо Mat