DwmExtendFrameIntoClientArea, fonction (dwmapi.h)
Étend le cadre de fenêtre dans la zone cliente.
Syntaxe
HRESULT DwmExtendFrameIntoClientArea(
[in] HWND hWnd,
[in] const MARGINS *pMarInset
);
Paramètres
[in] hWnd
Handle de la fenêtre dans laquelle le cadre sera étendu à la zone cliente.
[in] pMarInset
Pointeur vers une structure MARGEs qui décrit les marges à utiliser lors de l’extension du frame dans la zone cliente.
Valeur retournée
Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Cette fonction doit être appelée chaque fois que la composition de Desktop Window Manager (DWM) est activée. Gérez le message WM_DWMCOMPOSITIONCHANGED pour la notification de modification de composition.
Utilisez des valeurs de marge négatives pour créer l’effet « feuille de verre » où la zone cliente est affichée sous forme de surface pleine sans bordure de fenêtre.
Exemples
L’exemple suivant montre comment étendre la marge inférieure, en créant un cadre inférieur volumineux.
HRESULT ExtendIntoClientBottom(HWND hwnd)
{
// Set margins, extending the bottom margin
MARGINS margins = {0,0,0,25};
HRESULT hr = S_OK;
// Extend frame on the bottom of client area
hr = DwmExtendFrameIntoClientArea(hwnd,&margins);
if (SUCCEEDED(hr))
{
// ...
}
return hr;
}
L’exemple suivant illustre l’effet « feuille de verre » où la zone cliente est affichée sans bordure de fenêtre.
HRESULT ExtendIntoClientAll(HWND hwnd)
{
// Negative margins have special meaning to DwmExtendFrameIntoClientArea.
// Negative margins create the "sheet of glass" effect, where the client area
// is rendered as a solid surface with no window border.
MARGINS margins = {-1};
HRESULT hr = S_OK;
// Extend the frame across the entire window.
hr = DwmExtendFrameIntoClientArea(hwnd,&margins);
if (SUCCEEDED(hr))
{
// ...
}
return hr;
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | dwmapi.h |
Bibliothèque | Dwmapi.lib |
DLL | Dwmapi.dll |