Quand ma form apparait à l'écran ?

Le
progo
Je cherche à savoir quand ma form réapparaît à l'écran (parceque
l'utilisateur en a affiché d'autre). J'utilise Gotfocus mais cela ne
déclenche pas l'événement.
Comment faire ?
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
François Picalausa
Le #14734651
Hello,

regarde du côté de l'événement Activate

--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net

"progo" news:c5lpf1$ifu$
Je cherche à savoir quand ma form réapparaît à l'écran (parceque
l'utilisateur en a affiché d'autre). J'utilise Gotfocus mais cela ne
déclenche pas l'événement.
Comment faire ?


Pascal B.
Le #14734611
Bonjour progo

L'évenement à utiliser est Form_Activate.
Form_Gotfocus ne se déclenche que si la forme ne contient aucun controle pouvant recevoir le focus.

Amicalement
Pascal


"progo" | Je cherche à savoir quand ma form réapparaît à l'écran (parceque
| l'utilisateur en a affiché d'autre). J'utilise Gotfocus mais cela ne
| déclenche pas l'événement.
| Comment faire ?
|
|
progo
Le #14734591
Pourtant l'evenement deactivate ne se déclanche pas quand ma form disparait
? et lostFocus non plus...
Il y a encore un détaille qui m'échape. Dsl je suis un peut ignorant.
Pascal B.
Le #14734541
Re-bonjour progo,

Il n'y a pas d'évenements (LostFocus ou Desactivate) qui se déclenchent
quand ce sont des forms d'autres applications qui l'ont désactivé.

Pascal


"progo"
| Pourtant l'evenement deactivate ne se déclanche pas quand ma form disparait
| ? et lostFocus non plus...
| Il y a encore un détaille qui m'échape. Dsl je suis un peut ignorant.
|
|
Guy DETIENNE
Le #14734481
Salut ;O)

Il me semble avoir déjà eu ton problème.
Pour y remédier, voici ma façon de faire. Certes ce n'est pas la plus 'pro'
mais ca a le mérité de palier à quelques manquements.
C'est perfectible, donc le code est là pour une simple inspiration.

Pour ce faire, crée un nouveau Form et place un Timer et colle ceci dans le
code:

'En en-tête
Private Declare Function GetForegroundWindow Lib "user32" () As Long

Private Sub Form_Load()
Me.Timer1.Interval = 300
End Sub

Private Sub Timer1_Timer()

Dim Ret As Long
Ret = GetForegroundWindow()

If Ret <> Me.hWnd Then
Me.Cls
Print "Je n'ai plus le focus"
Else
Me.Cls
Print "J'ai le focus"
End If

End Sub

Tchao

Guy

"progo" news:c5lpf1$ifu$
Je cherche à savoir quand ma form réapparaît à l'écran (parceque
l'utilisateur en a affiché d'autre). J'utilise Gotfocus mais cela ne
déclenche pas l'événement.
Comment faire ?




Publicité
Poster une réponse
Anonyme