Comment désactiver le style WS_CAPTION d'une fenêtre (à l'aide de user32.dll)?

StackOverflow https://stackoverflow.com/questions/1417063

  •  06-07-2019
  •  | 
  •  

Question

J'intègre une application tierce dans un panneau d'un formulaire Windows C # (avec SetParent à partir de user32.dll). Je dois ensuite désactiver le style de fenêtre WS_CAPTION de la barre de titre afin qu'il ressemble à une partie de l'application d'hébergement.

Comment changer le style d'une fenêtre pour y parvenir?

Par exemple, disons _hWnd est le descripteur de l'application à incorporer.

Était-ce utile?

La solution

SetWindowLong (_hWnd, GWL_STYLE, GetWindowLong (_hWnd, GWL_STYLE) & amp; ~ WS_CAPTION);

Autres conseils

Si la mémoire est bonne, vous pourrez peut-être faire un GetWindowLong sur le style, | = ~ WS_CAPTION sur cette valeur, puis SetWindowLong. Voir ces API dans MSDN.

Voir aussi: http://www.codeguru.com/forum/ showthread.php? t = 352963

Utilisez GetWindowLong pour récupérer le style de la fenêtre et masquer le code < > WS_CAPTION , puis définissez le style mis à jour à l'aide de SetWindowLong . :

var style = GetWindowLong(_hWnd, GWL_STYLE);
SetWindowLong(_hWnd, GWL_STYLE, style & ~WS_CAPTION);

et avec le code d'assistance suivant:

const int GWL_STYLE = -16;
const int WS_CAPTION = 0x00C00000;

[DllImport ("user32")]
private static extern int GetWindowLong(System.IntPtr hwnd, int nIndex);

[DllImport ("user32")]
private static extern int SetWindowLong(System.IntPtr hwnd, int index, int newLong);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top