Menu e risorse: aggiunte di contenitori

Questo articolo illustra le modifiche che devono essere apportate ai menu e ad altre risorse in un'applicazione contenitore di modifica visiva.

Nelle applicazioni contenitore è necessario apportare due tipi di modifiche: modifiche alle risorse esistenti per supportare la modifica visiva OLE e l'aggiunta di nuove risorse usate per l'attivazione sul posto. Se si usa la procedura guidata dell'applicazione per creare l'applicazione contenitore, questi passaggi verranno eseguiti automaticamente, ma potrebbero richiedere alcune personalizzazioni.

Se non si usa la procedura guidata dell'applicazione, è possibile esaminare OCLIENT. RC, lo script di risorsa per l'applicazione di esempio OCLIENT, per vedere come vengono implementate queste modifiche. Vedere L'esempio OLE MFC OCLIENT.

Gli argomenti trattati in questo articolo includono:

Aggiunte al menu Contenitore

È necessario aggiungere le voci seguenti al menu Modifica:

Articolo Scopo
Inserisci nuovo oggetto Apre la finestra di dialogo Ole Insert Object per inserire un elemento collegato o incorporato nel documento.
Incolla collegamento Incolla un collegamento all'elemento negli Appunti nel documento.
Verbo OLE Chiama il verbo primario dell'elemento selezionato. Il testo di questa voce di menu viene modificato in modo da riflettere il verbo primario dell'elemento selezionato.
Collegamenti Apre la finestra di dialogo Modifica collegamenti OLE per modificare gli elementi collegati esistenti.

Oltre alle modifiche elencate in questo articolo, il file di origine deve includere AFXOLECL. RC, obbligatorio per l'implementazione della libreria di classi Microsoft Foundation. Inserisci nuovo oggetto è l'unica aggiunta di menu richiesta. È possibile aggiungere altri elementi, ma quelli elencati di seguito sono i più comuni.

Se si vuole supportare l'attivazione sul posto degli elementi contenuti, è necessario creare un nuovo menu per l'applicazione contenitore. Questo menu è costituito dallo stesso menu a comparsa File e menu a comparsa Finestra usati quando i file sono aperti, ma ha due separatori posizionati tra di essi. Questi separatori vengono usati per indicare dove l'elemento server (componente) (applicazione) deve posizionare i menu quando attivato. Per altre informazioni su questa tecnica di unione dei menu, vedere Menu e risorse: Unione di menu.

Aggiunte di tabelle dell'acceleratore di applicazioni contenitore

Se si supporta l'attivazione sul posto, sono necessarie piccole modifiche alle risorse della tabella degli acceleratori di un'applicazione contenitore. La prima modifica consente all'utente di premere il tasto di escape (ESC) per annullare la modalità di modifica sul posto. Aggiungere la voce seguente alla tabella principale dell'acceleratore:

ID Chiave Digita
ID_CANCEL_EDIT_CNTR VK_ESCAPE VIRTKEY

La seconda modifica consiste nel creare una nuova tabella di tasti di scelta rapida corrispondente alla nuova risorsa di menu creata per l'attivazione sul posto. Questa tabella include voci per i menu File e Finestre oltre alla voce VK_ESCAPE precedente. L'esempio seguente è la tabella dell'acceleratore creata per l'attivazione sul posto nel contenitore di esempio MFC:

ID Chiave Digita
ID_FILE_NEW CTRL+N VIRTKEY
ID_FILE_OPEN CTRL+O VIRTKEY
ID_FILE_SAVE CTRL+S VIRTKEY
ID_FILE_PRINT CTRL+P VIRTKEY
ID_NEXT_PANE VK_F6 VIRTKEY
ID_PREV_PANE MAIUSC+VK_F6 VIRTKEY
ID_CANCEL_EDIT_CNTR VK_ESCAPE VIRTKEY

Aggiunte di tabelle di stringhe per le applicazioni contenitore

La maggior parte delle modifiche apportate alle tabelle stringa per le applicazioni contenitore corrisponde alle voci di menu aggiuntive indicate in Aggiunte menu contenitore. Specificano il testo visualizzato nella barra di stato quando viene visualizzata ogni voce di menu. Di seguito sono riportate ad esempio le voci di tabella stringa generate dalla procedura guidata dell'applicazione:

ID Stringa
IDP_OLE_INIT_FAILED Inizializzazione OLE non riuscita. Assicurarsi che le librerie OLE siano la versione corretta.
IDP_FAILED_TO_CREATE Impossibile creare l'oggetto. Assicurarsi che l'oggetto venga immesso nel Registro di sistema.

Vedi anche

Menu e risorse (OLE)
Menu e risorse: aggiunte di server