Menu File in un'applicazione database MFC

Se si crea un'applicazione di database MFC e non si usa la serializzazione, è consigliabile interpretare i comandi Apri, Chiudi, Salva e Salva con nome nel menu File, mentre non sono disponibili linee guida di stile per questa domanda, ecco alcuni suggerimenti:

  • Eliminare completamente il comando Apri del menu File.

  • Interpretare il comando Open come "open database" e mostrare all'utente un elenco di origini dati riconosciute dall'applicazione.

  • Interpretare il comando Open come, ad esempio, "open profile". Mantieni Apri per l'apertura di un file serializzato, ma usa il file per archiviare un documento serializzato contenente informazioni sul "profilo utente", ad esempio le preferenze dell'utente, incluso l'ID di accesso (facoltativamente escluso la password) e l'origine dati con cui ha lavorato più di recente.

La Creazione guidata applicazione MFC supporta la creazione di un'applicazione senza comandi di menu File correlati a documenti. Selezionare l'opzione Vista database senza supporto file nella pagina Supporto database .

Per interpretare un comando di menu File in modo speciale, è necessario eseguire l'override di uno o più gestori di comandi, principalmente nella CWinAppclasse derivata da . Ad esempio, se si esegue completamente l'override OnFileOpen (che implementa il ID_FILE_OPEN comando) per indicare "open database:"

  • Non chiamare la versione della classe base di OnFileOpen, perché si sostituisce completamente l'implementazione predefinita del framework del comando.

  • Usare invece il gestore per visualizzare una finestra di dialogo che elenca le origini dati. È possibile visualizzare tale finestra di dialogo chiamando CDatabase::OpenEx o CDatabase::Open con il parametro NULL. Verrà visualizzata una finestra di dialogo ODBC che visualizza tutte le origini dati disponibili nel computer dell'utente.

  • Poiché le applicazioni di database in genere non salvano un intero documento, è probabile che si voglia rimuovere le implementazioni Salva e Salva con nome, a meno che non si usi un documento serializzato per archiviare le informazioni del profilo. In caso contrario, è possibile implementare il comando Salva con nome, ad esempio "transazione di commit". Per altre informazioni sull'override di questi comandi, vedere La nota tecnica 22 .

Vedi anche

Serializzazione: serializzazione e input/output del database