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

Voir aussi

Vue d’ensemble du flou DWM