Comment créer une Frm MODALE du genre MsgBox ?

titicar - 6 déc. 2001 à 20:52
 ZTPdiffusion - 6 déc. 2001 à 21:34
En théorie, si l'on affiche une Frm MODALE, mon application ne peut plus afficher une autre Frm par dessus... Mais ça marche quand même dans le cas d'une MsgBox.

Je voudrais créer moi-même une Sub ou Function du genre MsgBox qui rajoute d'autres renseignements comme par exemple 'Ne plus afficher cette fenêtre'.

Pour cela, je crée une Frm qui ressemble à la MsgBox, mais elle ne s'affiche pas par dessus une Frm MODALE déjà ouverte (une erreur VB se produit).

Y a-t-il donc un moyen sous VB de créer une Frm avec cette caractéristique?

1 réponse

Salut,

Tu n'as qu'à insérer le code suivant dans la feuille qui ressemble à une msgbox :
(Dans mon exemple elle se nomme Form3.)

'Configuration fenêtre au premier plan

Private Const OnTop = -1&
Private Const DISABLE_ONTOP = -2&
Private Const wFlag = 33

'Déclaration API fenêtre au premier plan

Private Declare Function SetWindowPos Lib "user32" (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

Private Sub Form_Load()

'Fenêtre au premier plan

WndLeft = Form3.Left / 15 'Form3 doit être remplacé par le nom de ta feuille
WndTop = Form3.Top / 15

SetWindowPos Form3.hwnd, OnTop, WndLeft, WndTop, 0, 0, 33

End Sub

a+
0
Rejoignez-nous