Funzione CopyImage (winuser.h)
Crea una nuova immagine (icona, cursore o bitmap) e copia gli attributi dell'immagine specificata nel nuovo. Se necessario, la funzione estende i bit per adattare le dimensioni desiderate della nuova immagine.
Sintassi
HANDLE CopyImage(
[in] HANDLE h,
[in] UINT type,
[in] int cx,
[in] int cy,
[in] UINT flags
);
Parametri
[in] h
Tipo: HANDLE
Handle per l'immagine da copiare.
[in] type
Tipo: UINT
Tipo di immagine da copiare. Questo parametro può avere uno dei valori seguenti.
Valore | Significato |
---|---|
|
Copia una bitmap. |
|
Copia un cursore. |
|
Copia un'icona. |
[in] cx
Tipo: int
Larghezza desiderata, in pixel, dell'immagine. Se si tratta di zero, l'immagine restituita avrà la stessa larghezza dell'immagine hImage originale.
[in] cy
Tipo: int
Altezza desiderata, in pixel, dell'immagine. Se si tratta di zero, l'immagine restituita avrà la stessa altezza dell'immagine hImage originale.
[in] flags
Tipo: UINT
Questo parametro può essere uno o più dei valori seguenti.
Valore | Significato |
---|---|
|
Elimina l'immagine originale dopo aver creato la copia. |
|
Prova a ricaricare un'icona o una risorsa cursore dal file di risorse originale anziché copiare semplicemente l'immagine corrente. Ciò è utile per la creazione di una copia di dimensioni diverse quando il file di risorse contiene più dimensioni della risorsa. Senza questo flag , CopyImage estende l'immagine originale alla nuova dimensione. Se questo flag è impostato, CopyImage usa le dimensioni del file di risorse più vicino alle dimensioni desiderate. Questa operazione avrà esito positivo solo se hImage è stato caricato da LoadIcon o LoadCursor o da LoadImage con il flag di LR_SHARED. |
|
Restituisce l'hImage originale se soddisfa i criteri per la copia, ovvero le dimensioni corrette e la profondità del colore, nel qual caso il flag di LR_COPYDELETEORG viene ignorato. Se questo flag non è specificato, viene sempre creato un nuovo oggetto. |
|
Se viene impostato e viene creata una nuova bitmap, la bitmap viene creata come sezione DIB. In caso contrario, l'immagine bitmap viene creata come bitmap dipendente dal dispositivo. Questo flag è valido solo se uType è IMAGE_BITMAP. |
|
Usa il formato di colore predefinito. |
|
Usa la larghezza o l'altezza specificata dai valori delle metriche di sistema per i cursori o le icone, se i valori cxDesired o cyDesired sono impostati su zero. Se questo flag non è specificato e cxDesired e cyDesired sono impostati su zero, la funzione usa le dimensioni effettive della risorsa. Se la risorsa contiene più immagini, la funzione usa le dimensioni della prima immagine. |
|
Crea una nuova immagine monocromatica. |
Valore restituito
Tipo: HANDLE
Se la funzione ha esito positivo, il valore restituito è l'handle per l'immagine appena creata.
Se la funzione ha esito negativo, il valore restituito è NULL. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Al termine dell'uso della risorsa, è possibile rilasciare la memoria associata chiamando una delle funzioni nella tabella seguente.
Risorsa | Funzione di rilascio |
---|---|
Bitmap | DeleteObject |
Cursore | DestroyCursor |
Icona | DestroyIcon |
Il sistema elimina automaticamente la risorsa quando il processo termina, tuttavia, chiamando la funzione appropriata salva la memoria e riduce le dimensioni del set di lavoro del processo.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winuser.h (include Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |
Set di API | ext-ms-win-ntuser-gui-l1-3-0 (introdotta in Windows 10, versione 10.0.10240) |
Vedi anche
Informazioni concettuali
Riferimento