Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [delphi] Evitare un errore nell'openDialog

    salve a tutti,

    ho messo un comando OpenDialog nel mi programma, ho solo piccolo problemaccio:
    se apro un file tutto è ok,
    se però provo ad annullare l'operazione e quando il menù è aperto clicco su ANNULLA ricevo il solito errore:
    "impossibile trovare il file ' ' dal percorso specificato",
    cioè il pazzo cerca di aprire un file anche quando clicco su annulla e non inserisco alcun nome di file!

  2. #2
    Dovresti postare il pezzo di codice, cmq credo tu faccia una cosa tipo:
    codice:
    OpenDialog.Execute;
    Memo1.Lines.LoadFromFile(OpenDialog.FileName);
    Dovresti usare:
    codice:
    if OpenDialog.Execute then
     Memo1.Lines.LoadFromFile(openDialog.FileName);
    Ciao
    www.iTentroPy.it - Elettronica e Programmazione
    Foto

  3. #3
    cioè metto una frase condizionale?
    e perchè?

    cm grazie

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    La proprietà FileName contiene il nome del file selezionato dalla finestra di dialog.

    Va da sè che se annulliamo l'operazione di selezione, la proprietà FileName non conterrà un valore valido, quindi deve esserci la possibilità di discriminare se l'operazione è andata a buon fine (l'utente ha selezionato un file e ha confermato l'operazione) oppure no (l'utente ha annullato la selezione).

    Il metodo Execute che deve essere richiamato per visualizzare la finestra di selezione del file fa proprio questo: restituisce un valore booleano che vale True se l'utente ha selezionato un file, oppure False in caso contrario.

    L'operazione di caricamento del file, qualunque essa sia, non deve essere effettuata se Execute restituisce False, altrimenti ciò che si ottiene di più significativo è un bel...errore.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  5. #5
    risolto grazie

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 © 2024 vBulletin Solutions, Inc. All rights reserved.