Questo topic e' stato chiuso dal moderatore.
17/07/10 20:57
xxmarco94
Ciao a tutti, vi spiego velocemente il mio problema:
Io ho creato un programma che deve caricare una lista di file e inserirla in una ListBox e caricare una lista di cartelle e inserirle in una ComboBox.
Il primo problema è con l'inserimento del nome delle cartelle nella combobox.
Posto il codice che uso per popolare la combobox:
La comboBox vieme popolata con il nome di tutte le cartelle, ma il problema è che quando voglio scegliere il nome di una certa cartella non si vede come (per esempio) "CARTELLA_DI_PROVA" ma si vede "[CARTELLA_DI_PROVA]", praticamente aggiunge le due parentesi quadre.
Come posso fare in modo di non vederele?
Il secondo problema è forse il più difficile. Vi spiego:
in questo programma c'è una listbox che contiene il nome di alcuni file e quando ne seleziono uno, su delle caselle di modifica, posso leggere il contenuto del file.
In questo file ci sono più dati da destinare a più caselle, e sono scritti in righe diverse (es. per i dati della casella uno leggo la prima riga, per la casella due la seconda riga).
Ora io devo fare in modo di leggere il file riga per riga in modo di poter assegnare ogni riga ad una variabile corrispondente ad una casella di modifica.
Ecco come ho fatto, solo che scrive tutto il contenuto del file in una sola casella.
Io ho creato un programma che deve caricare una lista di file e inserirla in una ListBox e caricare una lista di cartelle e inserirle in una ComboBox.
Il primo problema è con l'inserimento del nome delle cartelle nella combobox.
Posto il codice che uso per popolare la combobox:
void CGestioneMagazzinoDlg::PopulateCombo() { c_combo.ResetContent(); c_combo.Dir(DDL_DIRECTORY | DDL_READWRITE, CString("C:\Users\Marco\Desktop\Gestione Magazzino\Prodotti\Tipo\*.*")); }
La comboBox vieme popolata con il nome di tutte le cartelle, ma il problema è che quando voglio scegliere il nome di una certa cartella non si vede come (per esempio) "CARTELLA_DI_PROVA" ma si vede "[CARTELLA_DI_PROVA]", praticamente aggiunge le due parentesi quadre.
Come posso fare in modo di non vederele?
Il secondo problema è forse il più difficile. Vi spiego:
in questo programma c'è una listbox che contiene il nome di alcuni file e quando ne seleziono uno, su delle caselle di modifica, posso leggere il contenuto del file.
In questo file ci sono più dati da destinare a più caselle, e sono scritti in righe diverse (es. per i dati della casella uno leggo la prima riga, per la casella due la seconda riga).
Ora io devo fare in modo di leggere il file riga per riga in modo di poter assegnare ogni riga ad una variabile corrispondente ad una casella di modifica.
Ecco come ho fatto, solo che scrive tutto il contenuto del file in una sola casella.
CString indirizzo; UINT BytesRead; char buffer[512]; indirizzo = CString("C:\Users\Marco\Desktop\Gestione Magazzino\Prodotti\Nome\") + CString(NomePrdSel); m_desc = indirizzo; CFile prodotto(indirizzo, CFile::modeRead); while(BytesRead = prodotto.Read(buffer, sizeof(buffer))) { buffer[BytesRead] = NULL; m_nome = CString(buffer); } prodotto.Close(); UpdateData(false);
Ultima modifica effettuata da xxmarco94 17/07/10 20:59
aaa