|
|
|||||
|
Modale, Modeless, et Topmost Une fenêtre Windows CE est par défaut susceptible d'être cachée par d'autres fenêtres qui passent en avant plan par l'action de l'utilisateur ou par l'action directe des programmes, ces fenêtre sont dites modeless. Il existe aussi des fenêtres qui stoppent le déroulement d'un programme tant qu'elles sont visibles. Ces fenêtres sont dites modales, mais avec eVB il est impossible d'en créer. Il existe enfin une troisième catégorie qui permet à une fenêtre d'être modeless (elle n'est pas bloquante) tout en étant toujours visible. Ces fenêtres sont dites Topmost, et sont parfois très pratiques. Nous allons apprendre à les créer avec eVB. Comment faire ? Comme vous devez vous en douter, nous allons utiliser les APIs pour créer une fenêtre Topmost. La fonction qui permet de transformer une fenêtre eVB normale en fenêtre Topmost est "SetWindowPos", qui se trouvent dans la librairie dynamique "Coredll.dll". Cette fonction permet aussi de modifier la position (au sens coordonnées) d'une fenêtre, mais nous n'allons pas ici utiliser ces fonctionnalités là. Pour utiliser cette fonction avec eVB nous avons besoin de la déclarer de la manière suivante : Public Declare Function SetWindowPos Lib "Coredll" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long Et nous avons besoins aussi des constantes suivantes : Const HWND_TOPMOST = -1 Nous allons aussi créer une procédure eVB qui va prendre en charge l'utilisation de cette fonction. Cette procédure prend en paramètre un objet eVB de type Form (une fenêtre), et une valeur booléenne indiquant si l'on veut rendre notre fenêtre Topmost ou non : Public Sub SetTopmost(ByVal TheForm As Form,
ByVal Topmost As Boolean) Pour rendre une feuille Topmost, il suffit d'écrire dans sont événement "Load" : Sub Form_Load() Attention, le fait de rendre la fenêtre Topmost, l'affiche. Il en est de même lorsque vous cessez de la rendre Topmost. Pour quoi faire ? Cette fonctionnalité peut être extrêmement utile pour garder par exemple une boite à outils de votre application toujours sous la main, même si temporairement vous changez de programme. A vous d'avoir de l'imagination.
|
|||||
|
|
|||||
|
Copyright 2001-2004 - Tous droits réservés
|
|||||
|
iPAQ
est un produit de COMPAQ.
|