Formulaire Focus

Résolu
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 - 21 sept. 2006 à 14:13
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 - 21 sept. 2006 à 16:22
Bonjour à tous,

Dans un formulaire, j'ai un EditBox dans lequel j'écris beaucoup de chose...

Toutes les 30s j'ai un autre formulaire qui s'affiche à la MSN en bas à droite.

LE SOUCIS EST QUE JE PERDS LA MAIN SUR MON EDITBOX

Car le formulaire qui s'affiche en bas à droite récupère le focus et donc je ne peux

pas continuer ma saisie.

Quelqu'un aurait une idée?

Merci de votre aide

TBBUIM

6 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
21 sept. 2006 à 15:55
c'est la faute au Form2.Show, qui chez VB fait plus que l'afficher....

l'API suffit (testé a l'instant avec un Timer)

SetWindowPos Form2.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_NOACTIVATE Or SWP_NOZORDER Or SWP_SHOWWINDOW

Renfield
Admin CodeS-SourceS- MVP Visual Basic
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
21 sept. 2006 à 15:03
Est-ce TON formulaire, qui est en cause ?
si oui, on doit pouvoir ruser un brin, en lui interdisant le focus, etc

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
21 sept. 2006 à 15:25
Beh, en fait,afin d'afficher le formulaire en 1er plan, j'utilise l'API SetWindowPos

Afin de le mettre par-dessus tous les autres (normal, il faut pouvoir le voir)

Mais ça fait, qu'il récupère le focus.

Je vois pas trop comment ruser *-)

TBBUIM
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
21 sept. 2006 à 15:28
SetWindowPos ?

veille a bien lui avoir dit SWP_NOACTIVATE

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
21 sept. 2006 à 15:47
J'utilise cette sub dans le form_load de ma fenêtre d'avertissement
Public Sub RendreFormTjsVisible(MonForm As Object)
    SetWindowPos MonForm.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_NOACTIVATE Or SWP_NOZORDER
End Sub

Mais, il récupère toujours le focus

En fait, j'ai une api setTimer qui appelle ce formulaire toutes les 5 min
dans un TimerProc en faisant un classique NomForm.Show

Je ne vois absolument pas comment faire
Pour moi, la seule solution est de faire un prog qui ne gère, que, cela, mais j'ai besoin de lancer un form sur un double-clic
Comment puis-je lancer un form depuis un autre exe?
TBBUIM
0
tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
21 sept. 2006 à 16:22
Merci
J'ai donc remplacer le .show par ça et ça marche nikel chrome boxite
Fallait le savoir...
TBBUIM
0
Rejoignez-nous