Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 20 su 20
  1. #11
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    Dovresti avere sempre la documentazione MSDN sottomano per verificare che quanto scrivi sia corretto.

    Riguardando il codice (ho avuto poco tempo per farlo, sono un po' indaffarato) ci sono diversi errori.

    Il metodo ShowDialog che mostra la finestra non restituisce il nome del file, bensì l'esito (conferma/annullamento) della selezione.

    Il nome del file selezionato, se l'utente conferma l'operazione, si ottiene dalla proprietà FileName.

    Tenendo quindi conto dei nomi che hai attribuito ai componenti, volendo adattare il tuo esempio, credo che sia più corretto scrivere
    codice:
    Apri.InitialDirectory = "C:\"
    If Apri.ShowDialog() = Windows.Forms.DialogResult.OK Then
        rtfTesto.LoadFile(Apri.FileName)
    End If
    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  2. #12
    niente da fare stesso errore

  3. #13
    Non ho capito: si blocca o ti dà errore? Se ti dà errore: che errore è? Se si blocca: sicuro che non sia semplicemente un ritardo dovuto al caricamento del file? Il controllo rtf è piuttosto lento, lo so per esperienza.
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #14
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    Originariamente inviato da moneysepe
    niente da fare stesso errore
    A me funziona, quindi 1) hai copiato male il codice, 2) non l'hai nemmeno preso in considerazione.

    Oltre a questo, non fornisci alcuna ulteriore indicazione.

    Stai aprendo un file RTF o cosa? Se ottieni un errore, che errore ottieni?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #15
    m... da errore e evidenzia in giallo questo:

    rtfTesto.LoadFile(apri.FileName)

    io voglio dare ad un semplice pulsante l'opzione apri e deve aprire i file di testo come .txt

  6. #16
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    Originariamente inviato da moneysepe
    m... da errore e evidenzia in giallo questo
    Ripeto (per l'ultima volta, però): quale errore ti dà??
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #17
    non me ne dà errore evidenzia solo la scritta :rtfTesto.LoadFile(apri.FileName) con sotto scritto:Formato di file non valido. in una finestra con il punto esclamativo

  8. #18
    È ovvio che ti dice "formato di file non valido": lui tenta di interpretare il tuo file txt come un file rtf, e ovviamente non ne riconosce il formato. Se tu avessi controllato sulla MSDN avresti scoperto che il metodo "LoadFile" accetta due parametri, il primo, obbligatorio, indica il percorso del file da caricare, mentre il secondo, facoltativo, indica come interpretare il contenuto del file; se questo parametro viene omesso la funzione assume che il file che gli dici di caricare sia in formato RTF. La soluzione è la seguente:
    codice:
    Apri.InitialDirectory = "C:\"
    If Apri.ShowDialog() = Windows.Forms.DialogResult.OK Then
        rtfTesto.LoadFile(Apri.FileName, rtfText)
    End If
    Una soluzione più raffinata consisterebbe nel decidere come fargli caricare il file a seconda dell'estensione, magari aggiungendo una rudimentale gestione degli errori:
    codice:
    Apri.InitialDirectory = "C:\"
    If Apri.ShowDialog() = Windows.Forms.DialogResult.OK Then
        Try
            If Apri.FileName.ToUpper().EndsWith(".TXT")
                rtfTesto.LoadFile(Apri.FileName, rtfText)
            ElseIf Apri.FileName.ToUpper().EndsWith(".RTF")
                rtfTesto.LoadFile(Apri.FileName, rtfRTF)
            Else
                MessageBox.Show("Formato non supportato.","Errore",MessageBoxButtons.OK,MessageBoxIcon.Error)
            End If
        Catch ex As Exception
            MessageBox.Show("Errore: " & ControlChars.CrLf & ex.ToString(), "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try
    End If
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #19
    MItaly grazie il codice non era perfettamente quello ma questo rtfTesto.LoadFile(apri.FileName, RichTextBoxStreamType.PlainText) grazie ancora

  10. #20
    Pardon, avevo per errore consultato la documentazione di VB6.
    Ciao
    Amaro C++, il gusto pieno dell'undefined behavior.

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.