Section courante

A propos

Section administrative du site

WinRegisterClass

Fenêtre : Enregistre la classe
PMWIN.DLL os2.h

Syntaxe

BOOL WinRegisterClass( HAB hab, PSZ pszClassName, PFNWP pfnWndProc, ULONG flStyle, ULONG cbWindowData );

Paramètres

Nom Description
hab Ce paramètre permet d'indiquer un bloc ancrage vers un Handle.
pszClassName Ce paramètre permet d'indiquer le nom de la classe à enregistrer.
pfnWndProc Ce paramètre permet d'indiquer la procédure de fenêtre pour l'application.
flStyle Ce paramètre permet d'indiquer le style de fenêtre par défaut. Voici les constantes les plus communes :
Constante Description
CS_CLIPCHILDREN Cette constante permet d'indiquer que la fenêtre est dessiné dans les limites de la fenêtre enfant.
CS_CLIPSIBLINGS Cette constante permet d'indiquer que la fenêtre est dessiné dans les limites de frère et soeur.
CS_FRAME Cette constante permet d'indiquer que la fenêtre est dessiné dans les limites du cadre de la fenêtre.
CS_HITTEST Cette constante permet d'indiquer quand le pointeur est dans cette fenêtre, il envoi un WM_HITTEST.
CS_MOVENOTIFY Cette constante permet d'indiquer que les messages WM_MOVE seront envoyés à la fenêtre.
CS_PARENTCLIP Cette constante permet d'indiquer que la fenêtre est dessiné dans les limites des parents.
CS_PUBLIC Cette constante permet d'indiquer qu'il faut fabriquer une nouvelle classe publique.
CS_SAVEBITS Cette constante permet d'indiquer qu'il faut sauvegarder la région recouverte par la fenêtre pour la redessiner rapidement.
CS_SIZEREDRAW Cette constante permet d'indiquer d'ajuster un ensemble invalide de fenêtre lors de son redimensionnement.
CS_SYNCPAINT Cette constante permet d'indiquer que la fenêtre est redessiner de façon synchronisé (WM_PAINT est envoyé).
... ...
cbWindowData Ce paramètre permet d'indiquer le nombre d'octets réservés pour l'entreposage de chaque fenêtre de cette classe laquelle est créé.

Retour

Valeur Description
FALSE Cette valeur permet d'indiquer qu'une erreur s'est produite.
TRUE Cette valeur permet d'indiquer que l'opération s'est correctement effectué, et la classe est enregistré.

Description

Cette fonction permet d'utiliser normalement la fenêtre principal dans toutes les applications.

Exemple

Voici un simple exemple montrant comme appeler cette API avec WatCom C++ for OS/2 :

  1. #define INCL_WINMESSAGEMGR
  2. #include "os2.h"
  3.  
  4. #define ID_APPLICATIONNAME 3
  5.  
  6. void main(void) {
  7.     HWND hwndMain, hwndClient;
  8.     PFNWP ClientWndProc;
  9.     ULONG pflCreateFlags = FCF_ACCELTABLE | FCF_ICON | FCF_MENU | FCF_MINMAX | FCF_SIZEBORDER | FCF_SYSMENU | FCF_TASKLIST | FCF_TITLEBAR;
  10.     CHAR szTitle;
  11.     HAB myhab = WinInitialize(0);
  12.     HMQ hmq = WinCreateMsgQueue(myhab, 0);
  13.     if(WinRegisterClass(myhab, "CLIENT",ClientWndProc, 0, 0)) {
  14.         WinLoadString(myhab, 0, ID_APPLICATIONNAME, sizeof(szTitle), szTitle);
  15.         hwndMain = WinCreateStdWindow(HWND_DESKTOP, WS_VISIBLE, &pflCreateFlags, "CLIENT", szTitle, 0, 0, ID_APPLICATIONNAME, &hwndClient);
  16.     }
  17. }

Voir également

Langage de programmation - C pour OS/2 - WinInitialize
Langage de programmation - C pour OS/2 - WinCreateMsgQueue
Langage de programmation - C pour OS/2 - WinCreateStdWindow
Langage de programmation - C pour OS/2 - WinCreateWindow
Système d'exploitation - OS/2 - Introduction

Références

OS/2 Warp Presentation Manager API, Edition John Wiley, Joel Barnum, 1995, ISBN: 0-471-03873-3, page 28

Dernière mise à jour : Lundi, le 19 juillet 2010