Zum Inhalt springen

QT QTreeWidgetItem - itemclicked


Empfohlene Beiträge

Geschrieben

Hallo!

Bin ein Anfänger und brauche eure Hilfe. Ich habe mit Qt ein QTreeWidget erstellt. Wenn ich nun auf einen Eintrag klicke, möchte ich, dass einmal eine Nachricht kommt ("Sie haben auf diesen Eintrag geklickt").

Leider funktioniert das nicht so wie ich mir das vorstelle. Wenn ich bereits 2 Einträge habe, kommt diese Nachricht 2 mal, bei 3 Einträgen 3 mal u.s.w.


MainWindow::MainWindow()


{

    setupUi(this);


setWindowTitle(tr("Adressen Editor"));    

connect(actionAdd_Contact, SIGNAL(triggered()), this, SLOT(aufrufen()));

}  


void MainWindow::aufrufen() 

{


QTreeWidgetItem *cities = new QTreeWidgetItem(treeWidget); 

  cities->setText(0, namenanzeigen);

  cities->setText(1, phoneanzeigen);

  cities->setText(2, emailanzeigen); 


connect(treeWidget, SIGNAL(itemClicked(QTreeWidgetItem *, int)), 

this, SLOT(bearbeiten(QTreeWidgetItem *, int)));



void MainWindow::bearbeiten(QTreeWidgetItem *item, int col)

{


QString itemText = item->text(0);

QMessageBox::information(this, "Nachricht", itemText);


}



Weiss jemand Rat? Was mache ich falsch?

LG

Geschrieben

Wenn ich bereits 2 Einträge habe, kommt diese Nachricht 2 mal, bei 3 Einträgen 3 mal u.s.w.

Meinst du mit 2 Einträgen, wirklich zwei Items, oder verwechselst du das mit 2 Spalten.


QTreeWidgetItem *cities = new QTreeWidgetItem(treeWidget); 

  cities->setText(0, namenanzeigen);

  cities->setText(1, phoneanzeigen);

  cities->setText(2, emailanzeigen); 


Dieser Code erzeugt nämlich nur 1 Item über drei Spalten.

Ich behaupte mal, dass er deinen Slot mehrfach aufruft, weil obwohl nur ein Item da ist, für jede Spalte des Items der Slot einmal aufgerufen wird.

Dies kannst du leicht nachprüfen, indem du den Parameter "col" in deinem Slot mal auswertest.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...