ListBoxItem wird immer überschrieben
-
Also, es soll ein Rezept mit Titel in die Datenbank eingefügt werden. Der Titel des Rezepts soll dann als Item in einer Listbox stehen, das geht auch alles wunderbar, aber wenn ich jetzt ein weiteres rezept hinzufügen will, dann wird das Item überschrieben.
Wie kann ich denn sagen, dass schon was drin steht und er den nächsten freien Platz nehmen soll???#include "losimpl.h"
#include "userimpl.h"
#include <qlistbox.h>
#include <qstring.h>
#include <qlabel.h>QString s = ""; //String zum speichern des rezeptnamen
QString dat="";void losBase::openUser()
{
userBase* user = new userBase(this, 0, true);
QString dat= textLabel5->text();//
s =titel->text(); //Name des Rezepts
user->drinks->insertItem(s); //Name als ListBoxItem
user->art->setText(dat);
user->show();
}Hoffe, dass ihr versteht was ich meine
Gruß,
NullPlan
-
vielleicht solltest du **noch ein wenig mehr** von deinem code posten, da ich - und einige andere vielleicht auch - deinen ausführungen nicht ganz folgen kann.
-
Hier hilft immer die Docu.
void QListBox::insertItem ( const QString & text, int index = -1 )
This is an overloaded member function, provided for convenience. It behaves essentially like the above function.
Inserts a new list box text item with the text text into the list at position index.If index is negative, text is inserted at the end of the list.
-
Also hier noch mehr Code
Aus der Listbox wird hier ausgelesen, das wird dann an das Fenster "los" weitergegeben (Code im oberen Post)#include <qlabel.h>
#include "sortierenimpl.h"
#include <iostream.h>
#include <fstream.h>
#include <stdlib.h>
#include "losimpl.h"
#include <qtextedit.h>
#include <qcheckbox.h>
#include <qstring.h>QString speichern = "";
QString x="";void sortierenBase::openLos()
{fstream myFile(speichern, ios::out);
myFile.close();losBase* los = new losBase(this, 0, true);
los->titel->setText(lineEdit2->text());
los->textEdit8->setText(textEdit6->text());QListBoxItem* currentItem = this->datei->selectedItem();
QString speichern= currentItem->text()+"/";
QString x= currentItem->text();
speichern += lineEdit2->text();
speichern += ".txt";ofstream saveFile( speichern, ios::out);
if(saveFile.is_open())
{
saveFile << (lineEdit2->text());
saveFile << "\n";
saveFile << "\n";
saveFile << (textEdit6->text());
}
saveFile.close();lineEdit2->setText("da rein!");
textEdit6->setText("Rin da!");
los->textLabel5->setText(x);los->show();
}
Das rezept wird halt eingeben, gespeichert und soll in zwei Fenstern weiter aufgerufen werden können
-
Und soll ich dir das jetzt Umschreiben ?
Habe dir die Lösung schon gepostet
-
Hab das schon umgeschrieben, funktioniert trotzdem nicht so wie es soll