QTableWidget überprüfen ob der Name schon in der Tabelle



  • Hallo,
    Mein Programm :

    • 2 Textfelder wo jewals eine Value reingeschrieben wird und der Name dazu.
      Diese werden in eine Tabelle mir 2 Spalten reingeschrieben .
      Nun möchte ich jedes mal bevor man diese Inhalte dazufügt , überprüfen ob der Name bereits vorhanden ist.
      Wenn er vorhanden ist, soll es nicht hinzugefügt werden, wenn nicht, soll es ganz normal hinzugefügt werden.

    @void Tabelle::pushButtonClicked()
    { table->setSortingEnabled(false);

    strname = ( txtname ->text ());
    strvalue = ( txtvalue ->text ());
    QTableWidgetItem * valueitem = new QTableWidgetItem(0);
    valueitem->setText(strvalue);
    QTableWidgetItem * nameitem = new QTableWidgetItem(0);
    nameitem->setText(strname);
    coucount = table->columnCount();

    if ( cou >coucount )
    {
    table->insertRow(table->rowCount());
    }
    table->setItem( cou,1, valueitem );
    table->setItem( cou, 0, nameitem);
    cou++;
    table->setSortingEnabled(true);
    }
    @

    mein versuch lag bei :
    QList<QTableWidgetItem *> items = table->findItems(strname, Qt::MatchContains);
    if ( items.contains(nameitem) == true)

    Ich würde gerne den strname ( wo der aktuelle Name drin ist ) mit allen nameitems's die in der Liste existieren vergleichen .
    Was aber nicht funktioniert..



  • Keiner geantwortet, kein Problem.
    Ich habe eine Lösung gefunden, villeicht hilft sie ja jemand anderem auch weiter.
    @void Tabelle::pushButtonClicked()
    {
    table->setSortingEnabled(false);
    int i = -1;
    Tabelle tabellen;
    strname = ( txtname ->text ());
    strvalue = ( txtvalue ->text ());

    QList<QTableWidgetItem *> ItemList = table->findItems(strname, Qt::MatchExactly);
    if ( ItemList.count() == false )
    {
    QTableWidgetItem * valueitem = new QTableWidgetItem(0);
    valueitem->setText(strvalue);
    QTableWidgetItem * nameitem = new QTableWidgetItem(0);
    nameitem->setText(strname);
    coucount = table->columnCount();
    if ( cou >coucount )
    {table->insertRow(table->rowCount());}
    table->setItem( cou,1, valueitem );
    table->setItem( cou, 0, nameitem);
    cou++;
    }
    table->setSortingEnabled(true);

    }
    @


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.