Seite 1 von 1

maus clicks auf combo box simulieren

Verfasst: 6. Mai 2009 10:48
von dermoritz
ich versuche gearde im Rahmen eines Unit Tests Mausklicks auf einer Combo-Box bzw. einzelnen Elementen der Combo-Box zu simulieren.
ich habe 2 varianten ausprobiert, beide funzen nicht (die combo box wird bei einem Klick auf sie korrekt angezeigt):
1. die Position eines Elemnets speichern und den Klick auf dieser Position ausführen.

Code: Alles auswählen

QTest::mouseClick(comboBox,Qt::LeftButton);
QPoint point=comboBox->view()->visualRect(comboBox->model()->index(index, 0)).center();
QTest::mouseClick(comboBox->view(), Qt::LeftButton,0,point);
2. Das betreffende Element als Widget zurückgeben lassen und direkter klick aufs Widget.

Code: Alles auswählen

QTest::mouseClick(comboBox,Qt::LeftButton);	QTest::mouseClick(comboBox->view()->indexWidget(comboBox->model()->index(index,0)), Qt::LeftButton);
Die 2. Variante führt zu einem Error:
ASSERT: "widget" in file c:/Programme/qt/opensource_MinGw_4_4_2/include/QtTest/../../src/testlib/qtestmouse.h, line 76

Weiß jemand wie das korrekter Weise geht? Ich will möglichst nicht mit setCurrentIndex anrücken.

Verfasst: 18. Mai 2009 10:34
von dermoritz
qt support meint: das geht nicht. man muss die werte also direkt setzen.