[gelöst] QTreeWidget (findItems)

Alles zum Qt Framework für Java
Antworten
ChMaster
Beiträge: 252
Registriert: 23. Februar 2005 14:44
Wohnort: RP -> Alzey
Kontaktdaten:

[gelöst] QTreeWidget (findItems)

Beitrag von ChMaster »

Servus zusammen,

ist es möglich in einem QTreeWidget nach einträgen zu suchen?

Ich habe es damit versucht, aber es funktioniert nicht? Fehler von Eclipse:
(The method findItems(String, Qt.MatchFlags) in the type QTreeWidget is not applicable for the arguments (String, Qt.MatchFlag)
(The method findItems(String, Qt.MatchFlags, int) in the type QTreeWidget is not applicable for the arguments (String, Qt.MatchFlag, int)

Code: Alles auswählen

List< QTreeWidgetItem > itemList = ui.treeWidget.findItems( "Hallo", Qt.MatchFlag.MatchExactly );
List< QTreeWidgetItem > itemList1 = ui.treeWidget.findItems( "Welt", Qt.MatchFlag.MatchExactly, 0 );
Ist dies ein Bug in QtJambi? Wenn ja, muss ich mich halt damit begnügen. :)

Code: Alles auswählen

boolean foundItem = false;
for( int a = 0; a < ui.treeWidget.topLevelItemCount(); a++ )
{
    QApplication.processEvents();
    QTreeWidgetItem findItem = ui.treeWidget.topLevelItem( a );
    if( findItem.text( 0 ).equalsIgnoreCase( ui.lineEdit.text() ) )
    {
        foundItem = true;
     }
}
Zuletzt geändert von ChMaster am 16. Juli 2008 09:46, insgesamt 2-mal geändert.
ChMaster
------------ Projekte------------
DBoxFE
DMS
First4 (Plugin-Develper)
ArneStocker
Beiträge: 300
Registriert: 3. November 2004 16:15
Wohnort: Berlin

Beitrag von ArneStocker »

--> The method findItems(String, Qt.MatchFlags) in the type QTreeWidget is not applicable for the arguments (String, Qt.MatchFlag)

Übergeben werden muss ein Objekt der Klasse Qt.MatchFlags, diese enthält Enums vom Typ Qt.MatchFlag. Versuch doch mal z.B.
treeview.findItems("Hallo",new Qt.MatchFlags(Qt.MatchFlag.MatchCaseSensitive,Qt.MatchFlag.MatchWildcard));
Gruß Arne
ChMaster
Beiträge: 252
Registriert: 23. Februar 2005 14:44
Wohnort: RP -> Alzey
Kontaktdaten:

Beitrag von ChMaster »

Servus ArneStocker,
ArneStocker hat geschrieben:Übergeben werden muss ein Objekt der Klasse Qt.MatchFlags
Ich danke dir. Wer Dokumentation lesen kann ist klar im Vorteil. Obwohl, ich in die Dokumentation geschaut habe. Es gab aber keinen Hinweis, dass dies ein Objekt sein muss anstatt eines Enums. :(
ChMaster
------------ Projekte------------
DBoxFE
DMS
First4 (Plugin-Develper)
ArneStocker
Beiträge: 300
Registriert: 3. November 2004 16:15
Wohnort: Berlin

Beitrag von ArneStocker »

Der Unterschied zwischen Qt.MatchFlags und Qt.MatchFlag ist ja auch nicht gerade dazu angetan, ins Auge zu springen.

Ist mir auch nur aufgefallen, weil es in den meisten anderen Methoden von QtJambi ähnlich funktioniert, d.h. es werden nicht die enums übergeben, sondern die Klassen, deren Konstruktoren mit den enums initialisiert werden.

In Java haben die enums wohl keine Integer - repräsentation und können nicht einfach mit 'ODER' verknüpft werden.

Gruß Arne
ChMaster
Beiträge: 252
Registriert: 23. Februar 2005 14:44
Wohnort: RP -> Alzey
Kontaktdaten:

Beitrag von ChMaster »

ArneStocker hat geschrieben: Ist mir auch nur aufgefallen, weil es in den meisten anderen Methoden von QtJambi ähnlich funktioniert, d.h. es werden nicht die enums übergeben, sondern die Klassen, deren Konstruktoren mit den enums initialisiert werden.
Danke für die Erklärung. Nun weiss ich bescheid und werde obacht geben. :)
ArneStocker hat geschrieben: In Java haben die enums wohl keine Integer - repräsentation und können nicht einfach mit 'ODER' verknüpft werden.
Stimmt, in Java haben die Enumeratoren keinen Integerwert. Zumindest ist es mir so bekannt, da ich seit ca. 3 Jahren mit Java entwickle (Ausbildung). Naja, QtJambi ist zwar auch Java aber um einiges besser als AWT/Swing. :D
ChMaster
------------ Projekte------------
DBoxFE
DMS
First4 (Plugin-Develper)
Antworten