Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    41

    Salva/apri un combox in file testo (vb6)

    salve.
    Riesco a scrivere e rileggere senza problemi in un file 2 textbox. SE aggiungo un combox, non mi funziona bene. Si vede che la sintassi é sbagliata.
    Ecco il mio codice
    (Chiedo scusa ma non riesco a mettere i Tag)

    Private Sub Apri_Click()
    On Error Resume Next
    CommonDialog1.Filter = "Testo|*.txt"
    CommonDialog1.ShowOpen
    Call LoadText(CommonDialog1.filename, Text1)
    End Sub

    Private Sub LoadText(file As String, Text1 As TextBox)
    Dim H As Integer
    Dim L As String

    H = FreeFile
    Open file For Input As #H
    While Not EOF(H)
    Line Input #H, L
    Text1.Text = Text1.Text & L & vbCrLf
    Line Input #H, L
    Text2.Text = Text2.Text & L & vbCrLf
    Combo1.text=Combo1.text & L
    Wend
    Close #1

    Public Sub SaveText(file As String, Text1 As TextBox)

    Open file For Output As #2
    Print #2, Text1.Text
    Print #2, Text2.Text
    Print #2, Combo1.text

    Close #2

    Dove sbaglio?

    grazie.
    pazienza

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Cosa vuol dire "non mi funziona bene"? Non sei in grado di dire con precisione che errore o malfunzionamento ha il programma? Cosa ti aspetti e cosa hai?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    41
    Salve Oregon.
    Spiego meglio
    Non mi da nessun errore.
    A salvare naturalmente non succede nulla.
    Ma quando vado a ricaricaricare il file salvato(con nome ), non mi viene ridato nulla del contenuto salvato del ComboBox. E' giusto solo il contenuto dei textbox.
    IL Combo resta vuoto.
    Certe volte invece l'item salvato del Combo, se ricaricato, mi viene ritornato nel TextBox DIETRO alla parola salvata del TextBox stesso.

    Per questo ho detto che certamente ho commesso un errore nell'impstazione
    dei TextBox e del combo. Ho ,provato vari spostamenti ma niente.
    Quello che mi aspetto é naturalmente che cio che era presente nei vari box al momento del salvataggio, mi ritorni alla apertura del file nelle giustye posizioni.
    grazie.
    pazienza

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Scusa, partiamo da quando salvi i dati ... mi descrivi quello che, per te, dovrebbe fare la

    SaveText

    e in particolare il significato del secondo parametro?

    P.S. Fra l'altro, e' giusto il fatto che vuoi salvare solamente l'elemento visualizzato della combo e non tutti gli elementi della combo stessa?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    41
    Dunque nell'esempio di codice
    ho due textbox e un combobox
    In fase di run riempio qualcosa nei textbox.
    SELEZIONO una voce nella combobox
    Per es. ho tre items : uno, due, tre
    io selezione 'uno' ed é visibile 'uno' nella finestrella del combo
    E' tutto.
    Io salvo con nome. Es. TESTO.txt
    Deve essere salvato il contenuto dei due textbox e la voce 'uno' della combo
    (SE sono salvati tutti gli items del combo, anche i non visibili come tu dici, sarebbe ancora meglio)
    Se io ricarico il file TESTO.txt mi deve venire ridato il contenuto dei
    textbox piu il combo con la voce 'uno' visibile.
    Fino adesso il contenuto dei textbox mi viene restituito. Il combo no.
    E' tutto.

    p.s.In questo esempio di codice io ho messo solo un combobox per illustrare
    il mio problema.
    Nella situazione reale ce ne dovranno essere 2 di combo
    con tre items per ognuno

    grazie
    pazienza

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se gli elementi presenti nei combo sono sempre quei tre, basta che tu salvi il valore corrente dell'indice del combo e non il testo.

    In questo modo, quando rileggi, imposti nel combo l'elemento con l'indice letto dal file.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    41
    Si potrebbe avere un esempio pratico?
    Solo del combobox in questione.
    Se possibile ovviamente. In quanto questa questione é da tempo che
    mi occupa, e ho provato di tutto, ma si vede che il mio
    approccio era sbagliato.

    pazienza

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh ... mi sembrava semplice ...

    Quando salvi devi scrivere

    codice:
    Print #2, Combo1.ListIndex
    e quando leggi

    codice:
    Line Input #H, L
    Combo1.ListIndex = CLng(ix)
    Considera inoltre, che il ciclo in lettura non serve.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    41
    Ahii !
    Ed io che a lungo ho cercato e pensavo chissà quale oscura routine ci volesse !!!
    Ho aggiunto immediatamente queste due righe al codice e subito ha funzionato
    a meraviglia. Posso finalmente chiudere il programma.
    Grazie infinite, Oregon.
    Veramente di cuore.
    E scusa, perché a vedere la soluzione al problema, la
    mia domanda ti sarà sembrata alquanto ...stupida.

    saluti.
    grazie

    pazienza.

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da pazienza
    E scusa, perché a vedere la soluzione al problema, la
    mia domanda ti sarà sembrata alquanto ...stupida.
    Di nulla ... non stupida ... niente e' stupido se non si sa ... ma sicuramente banale, nel senso che l'avresti affrontata e risolta tranquillamente da solo leggendo qualche capitolo iniziale di una guida ...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.