Seite 1 von 1

Doppelklick auf Label abfangen?

Verfasst: 23. September 2007 14:51
von qtp
Hy,

wie fange ich ein Doppelklick auf ein Label ab?
Ich hab schon mit "mouseDoubleClickEvent" rumprobiert, aber da kann ich immer nur die Doppelklicks im gesamten Fenster abfangen!

Code: Alles auswählen

void Form::mouseDoubleClickEvent(QMouseEvent *event)
{
    ...
}

Verfasst: 23. September 2007 15:13
von caligano
Du musst eine Subclass MyLabel von QLabel erstellen.
Dann kannst du z.B. ein eigenes Signal doubleClicked() aussenden:

Code: Alles auswählen

void MyLabel::mouseDoubleClickEvent( QMouseEvent *e ) {
	emit doubleClicked();
}

Verfasst: 23. September 2007 15:17
von dhcase

Code: Alles auswählen

void Form::mousePressEvent( QMouseEvent *e )
{

	if (e->type() == QEvent::MouseButtonDblClick) 
	{
		QPoint pos = e->pos();
		QRect rect = QRect(ui.lable->pos(), ui.label->size());
		if (rect.contains(pos)) {
			// mach was
		}
		e->accept();
	}
}

Verfasst: 24. September 2007 09:46
von qtp
perfekt, funktioniert. Danke!