ListBox Inhalt mit Vektoren speichern



  • Wie geht das genau. Hab das mit CStringArray probiert, das geht aber irgendwie net.
    MFG



  • Poste bitte mal ein Beispiel was Du genau machst und was nicht geht! (hatten wir das nicht schon mal?)



  • Ja da haben wir ja so lange diskutiert 🙂 Klappt aber halt immer noch net. Und in dem anderen Post wurde noch erwähnt das man das irgendwie mit Vektoren machen kann.
    Ich will den Inhalt einer Listbox irgendwie speichern. Da ich eine ListBox für maximal 9 verschiedene Darstellungen benutze. Also muss der Inhalt immer aktualisiert werden.
    Ich habe einen Button, bei dem der Inhalt gespeichert werden soll und wenn ich auf einen Radio Button klicke soll das vorher gespeicherte wieder in die Listbox geladen werden. Ich hab auch schon, nach dem der Inhalt gespeichert werden sollte, probiert die Variable mit nem Stream in ne Datei zu schreiben, aber die Datei bleibt auch leer.
    Die Funktion zum Speichern

    CButton* pFueller1 = (CButton*) GetDlgItem(IDC_FUELLER1);
    CStringArray Fueller1;
    if (pFueller1->GetCheck() != BST_UNCHECKED) 
    	{ 
        // ich bin wohl ausgewählt... 
    	Fueller1.Add(m_Fueller_Liste);//ListenFeld in den StringArray speichern
    	}
    

    Und die Funktion zum laden in die Listbox

    CListBox* pBox = (CListBox*) GetDlgItem(IDC_FUELLER_LISTE);//setzt einen ListBox Zeiger auf pBox
    
    	pBox->ResetContent();
    
    	for(int i=0; i<Fueller1.GetSize(); i++) 
    	{ 
        pBox->AddString(Fueller1[i]); 
    	}
    


  • Desert Storm schrieb:

    if (pFueller1->GetCheck() != BST_UNCHECKED) 
    	{ 
        // ich bin wohl ausgewählt... 
    	Fueller1.Add(m_Fueller_Liste);//FEHLER !?
    	}
    

    ist m_Fueller_Liste auch ein String wenn nicht schreibst du da keinen String rein sondern die Liste ansich also das Object, ich denk mal da liegt der Fehler.



  • Hab jetzt ne Lösung gefunden:
    Die Speichern Funktion:

    CButton* pFueller1 = (CButton*) GetDlgItem(IDC_FUELLER1);
    CListBox* pBox = (CListBox*) GetDlgItem(IDC_FUELLER_LISTE);
    CStringArray Fueller1;
    CString Fueller0;
    if (pFueller1->GetCheck() != BST_UNCHECKED) 
    	{ 
        // ich bin wohl ausgewählt... 
    	Fueller1.RemoveAll();//Da sich vorher Daten in dem Array befinden
    	for(int i=0; i<pBox->GetCount(); i++) 
    	{ 
        pBox->GetText(i,Fueller0);
    	Fueller1.Add(Fueller0);
    	} 
    	}
    

    Und die Funktion zum Aufrufen:

    CListBox* pBox = (CListBox*) GetDlgItem(IDC_FUELLER_LISTE);//setzt einen ListBox Zeiger auf pBox
    
    	pBox->ResetContent();
    
    	for(int i=0; i<Fueller1.GetSize(); i++) 
    	{ 
        pBox->AddString(Fueller1[i]); 
    	}
    

    MFG


Anmelden zum Antworten