Creazione di una finestra principale

La prima finestra di che un'applicazione crea in genere è la finestra principale. Creare la finestra principale utilizzando la funzione CreateWindowEx , specificando la classe della finestra, nome della finestra, stili finestra, dimensione, posizione, maniglia menù, handle di istanza e dati per la creazione. Una finestra principale appartiene ad una classe di finestra definite dall'applicazione, per cui è necessario registrare la classe finestra e fornire una routine della finestra per la classe prima di creare la finestra principale.

Maggior parte delle applicazioni in genere utilizzare lo stile WS_OVERLAPPEDWINDOW per creare la finestra principale. Questo stile dà la finestra una barra del titolo, un menu finestra, un bordo di ridimensionamento e minimizzare e massimizzare i pulsanti. La funzione CreateWindowEx restituisce un handle che identifica in modo univoco la finestra.

Nell'esempio seguente viene creata una finestra principale appartenendo a una classe di finestra definito dall'applicazione. Il nome della finestra, Main Window , verrà visualizzato nella barra del titolo della finestra. Combinando gli stili WS_VSCROLL e WS_HSCROLL con lo stile WS_OVERLAPPEDWINDOW, l'applicazione crea una finestra principale con barre di scorrimento orizzontali e verticali in oltre ai componenti forniti dallo stile WS_OVERLAPPEDWINDOW. Le quattro occorrenze della costante CW_USEDEFAULT impostare le dimensioni iniziali e la posizione della finestra ai valori predefiniti definiti dal sistema. Specificando NULL invece di un handle di menù, la finestra avrà il menu definito per la classe finestra.

HINSTANCE hinst; 
HWND hwndMain; 
 
/ / Crea la finestra principale. 
 
hwndMain = CreateWindowEx (0, / / no esteso stili "MainWClass", / / classe nome "Finestra principale", / / finestra nome WS_OVERLAPPEDWINDOW |   / / si sovrappose finestra WS_HSCROLL |        / / orizzontale scorrere barra WS_VSCROLL, / / verticale scorrere barra CW_USEDEFAULT, / / predefinito orizzontale posizione CW_USEDEFAULT, / / predefinito verticale posizione CW_USEDEFAULT, / / default larghezza CW_USEDEFAULT, / / default altezza (HWND) NULL, / / nessuna finestra padre o proprietario (HMENU) NULL, / / menu di classe used hinstance, / / istanza di gestire NULL);                  / / no dati per la creazione finestra se (! hwndMain) return FALSE; 
 
/ / Mostra la finestra utilizzando il flag specificato dal programma / / che ha avviato l'applicazione e invia l'applicazione / / un messaggio WM_PAINT. 
 
ShowWindow (hwndMain, SW_SHOWDEFAULT); 
UpdateWindow(hwndMain) 
 

Si noti che nell'esempio precedente chiama la funzione ShowWindow dopo la creazione della finestra principale. Ciò avviene perché il sistema non visualizza automaticamente la finestra principale dopo la creazione. Passando il flag SW_SHOWDEFAULT per ShowWindow, l'applicazione permette che il programma che ha avviato l'applicazione per impostare l'iniziale Visualizza stato della finestra principale. La UpdateWindow funzione Invia finestra del suo primo messaggio WM_PAINT.

Rimedio: Inserire il CD-ROM CD di MSDN Library.

Index