Condividi tramite


Struttura CREATESTRUCTA (winuser.h)

Definisce i parametri di inizializzazione passati alla routine finestra di un'applicazione. Questi membri sono identici ai parametri della funzione CreateWindowEx.

Sintassi

typedef struct tagCREATESTRUCTA {
  LPVOID    lpCreateParams;
  HINSTANCE hInstance;
  HMENU     hMenu;
  HWND      hwndParent;
  int       cy;
  int       cx;
  int       y;
  int       x;
  LONG      style;
  LPCSTR    lpszName;
  LPCSTR    lpszClass;
  DWORD     dwExStyle;
} CREATESTRUCTA, *LPCREATESTRUCTA;

Membri

lpCreateParams

Tipo: LPVOID

Contiene dati aggiuntivi che possono essere usati per creare la finestra. Se la finestra viene creata come risultato di una chiamata alla funzione CreateWindow o CreateWindowEx, questo membro contiene il valore del parametro lpParam specificato nella chiamata di funzione.

Se la finestra creata è una finestra client MDI, questo membro contiene un puntatore a una struttura CLIENTCREATESTRUCT. Se la finestra creata è una finestra figlio MDI, questo membro contiene un puntatore a una struttura MDICREATESTRUCT.

Se la finestra viene creata da un modello di finestra di dialogo, questo membro è l'indirizzo di un valore SHORT che specifica le dimensioni, in byte, dei dati di creazione della finestra. Il valore è immediatamente seguito dai dati di creazione. Per altre informazioni, vedere la sezione Osservazioni seguente.

hInstance

Tipo: HINSTANCE

Handle per il modulo proprietario della nuova finestra.

hMenu

Tipo: HMENU

Handle del menu da utilizzare nella nuova finestra.

hwndParent

Tipo: HWND

Handle per la finestra padre, se la finestra è una finestra figlio. Se la finestra è di proprietà, questo membro identifica la finestra del proprietario. Se la finestra non è una finestra figlio o di proprietà, questo membro viene NULL.

cy

Tipo: int

Altezza della nuova finestra, in pixel.

cx

Tipo: int

Larghezza della nuova finestra, espressa in pixel.

y

Tipo: int

Coordinata y dell'angolo superiore sinistro della nuova finestra. Se la nuova finestra è una finestra figlio, le coordinate sono relative alla finestra padre. In caso contrario, le coordinate sono relative all'origine dello schermo.

x

Tipo: int

Coordinata x dell'angolo superiore sinistro della nuova finestra. Se la nuova finestra è una finestra figlio, le coordinate sono relative alla finestra padre. In caso contrario, le coordinate sono relative all'origine dello schermo.

style

Tipo: LONG

Stile per la nuova finestra. Per un elenco dei valori possibili, vedere Stili finestra.

lpszName

Tipo: LPCTSTR

Nome della nuova finestra.

lpszClass

Tipo: LPCTSTR

Puntatore a una stringa con terminazione Null o a un atom che specifica il nome della classe della nuova finestra.

dwExStyle

Tipo: DWORD

Stile della finestra estesa per la nuova finestra. Per un elenco dei valori possibili, vedere stili di finestra estesa.

Osservazioni

Poiché il membro lpszClass può contenere un puntatore a un atomo locale (e pertanto inaccessibile), non ottenere il nome della classe usando questo membro. Usare invece la funzione GetClassName .

È necessario accedere ai dati rappresentati dal membro lpCreateParams usando un puntatore dichiarato utilizzando il tipo UNALIGNED, perché il puntatore potrebbe non essere DWORD allineato. Questo è illustrato nell'esempio seguente:

typedef struct tagMyData 
{
    // Define creation data here. 
} MYDATA; 
 
typedef struct tagMyDlgData 
{ 
    SHORT   cbExtra; 
    MYDATA  myData; 
} MYDLGDATA, UNALIGNED *PMYDLGDATA; 
 
PMYDLGDATA pMyDlgdata = (PMYDLGDATA) (((LPCREATESTRUCT) lParam)->lpCreateParams);

Nota

L'intestazione winuser.h definisce CREATESTRUCT come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
intestazione winuser.h (include Windows.h)

Vedere anche

informazioni sull'interfaccia a documenti multipli

concettuale

CreateWindow

CreateWindowEx

MDICREATESTRUCT

riferimento

Windows