Seite 1 von 1

Styles für QLabels

Verfasst: 15. Dezember 2006 19:13
von soulsofpetro
Hallo Leute,

Ich habe in einem GridLayout QLabels positioniert.
mit einem MouseEvent (enter, leave), passiert irgendwas wenn ich mit der maus drüberfahre.
nun will ich auch ein visuelles feedback haben einerseits, will aber auch dass die dinger schick aussehen.

damit diese labels farbe bekommen nutze ich den paintEvent.

void myLabel::paintEvent(QPaintEvent *event)
{
QPainter p(this);
p.setPen(QColor(1, 89, 9));
p.fillRect(rect(), QColor(235, 226, 99));
p.drawRect(rect());
p.drawText(rect(), Qt::AlignCenter, this->character);
}

ich fülle also das label mit farbe und schreibe noch was rein.
habe ich eine möglichkeit das label irgendwie aufblinken zu lassen? über den MouseEvent Enter? ich viel aber vermeiden GraphicItems zu nehmen, die hatte ich zu begin.

ich habe auch folgendes versucht ins painEvent
p.setBrush(Qt::radialGradientPattern);
aber das funzt auch nicht.

auch wenn ich in den konstruktor z.B.
->setFrameStyle(QFrame::Panel | QFrame::Raised);
greift das auch nicht

also wie gesagt, ich habe zwei probleme:

1. über mouseEvent Enter, das label aufblinken zu lassen

2. den labels einen style verpassen, damit sie plastischer aussehen.

hat jemand eine idee?

thanks :)

Verfasst: 16. Dezember 2006 13:26
von soulsofpetro
hat denn niemand eine idee, wie ich für alle meine QLabels setFrameShape( QFrame::StyledPanel ); einstellen kann?

Verfasst: 16. Dezember 2006 16:43
von macman
Mach Dir dein eigenes QLabel. Überschreibe mouseEnterEvent, mouseLeaveEvent, eventuell das paintEvent und den Konstruktor.