Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1412 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Focus sur fenêtres MDI

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Focus sur fenêtres MDI

n°1502175
Red Viper
The Hellfire Preacher
Posté le 12-01-2007 à 15:44:44  profilanswer
 

Bonjour,
J'ai un programme qui a 2 MDI filles d'une fenêtre mère. J'ai un problème si je suis les étapes suivantes :
- Je met le focus sur un controle de mon MDI fille n° 1.
- Je vais sur mon MDI fille n° 2.
- Je ferme la MDI fille n° 2.
--> La MDI fille n° 1 s'active automatiquement (c'est normal), mais le focus se positionne sur le controle qui a le TabIndex le plus petit et n'est plus sur le controle sur lequel je l'avais positionné.
 
Le plus bisarre est que ce problème n'arrive que si les MDI filles sont maximisées. En effet, si on est en mode fenêtre, le focus reste bien sur le bon controle.
Ce problème arrive aussi si on se déplasse d'une fenêtre à l'autre avec Ctrl+Tab, mais pas si on passe par le menu "Fenêtre" et qu'on choisi la fenêtre à afficher.
Merci de me dire si vous connaissez ce problème et si on peut le contourner.
 
edit : J'utilise VB6


Message édité par Red Viper le 12-01-2007 à 15:46:17
mood
Publicité
Posté le 12-01-2007 à 15:44:44  profilanswer
 

n°1505914
MagicBuzz
Posté le 22-01-2007 à 14:55:50  profilanswer
 

A mon avis, quand tu entres dans le scénario "ça déconne", c'est qu'un évènement (peut-être interne) est levé en plus.
 
Le plus simple, à tester :
-> OnBlur de la fenêtre : sauvegarde de l'id du champ qui as le focus
-> OnFocus de la fenêtre : restauration du focus sur le champ sauvegardé

n°1506642
Red Viper
The Hellfire Preacher
Posté le 24-01-2007 à 10:47:14  profilanswer
 

Malheureusement, je suis arrivé à la même conclusion que toi. J'espérais malgré tout me tromper.
Merci pour ta réponse.

n°1507021
Red Viper
The Hellfire Preacher
Posté le 25-01-2007 à 09:53:13  profilanswer
 

Pour palier à ce premier problème, j'en rencontre un autre.
Est-il possible d'accéder aux controls d'un activeX ?
Je m'explique. J'ai un activeX que j'ai développé, et je le colle sur un formulaire. Je voudrais accéder aux controls de l'activeX depuis mon formulaire.
Merci de me dire si c'est faisable.

n°1507045
MagicBuzz
Posté le 25-01-2007 à 10:29:52  profilanswer
 

Ca dépend de ton ActiveX.
Il faut notamment que ses contrôles soient exposés en public, où que tu disposes d'accesseurs publics.

n°1507075
Red Viper
The Hellfire Preacher
Posté le 25-01-2007 à 11:41:25  profilanswer
 

En fait, il s'agit d'un OCX comportant plusieurs TextBoxes, Options, CheckBoxes et boutons.
Le but étant que je puisse, dans un premier temps, savoir sur quel contrôle de mon OCX se trouve le focus, et ceci depuis mon formulaire qui se trouve donc à un niveau supérieur.
Puis par la suite, remettre le focus sur le contrôle de mon OCX.
 
Tu va me dire que c'est bizarre de coller un OCX sur un formulaire et de ne pas faire le formulaire directement, mais en fait je fait ça car j'ai un formulaire vierge qui charge différents OCX selon l'action effectuée. Ceci me permet de coder une seule fois le code commun aux différents ocx.
Je suis pas sûr d'avoir était clair. Pose des questions sur le fonctionnement de mon application si tu as besoin pour répondre au mieux à mon problème.
Merci.

n°1508324
Red Viper
The Hellfire Preacher
Posté le 29-01-2007 à 17:05:56  profilanswer
 

Pour palier à mon problème, j'aimerai récupérer le TabIndex du contrôle qui a le focus.
Pour celà, je veux y accéder depuis un contrôle qui est présent sur toute mes fenêtres.
Il est possible d'accéder aux contrôles de l'activeX parent via UserControl.ParentControls.Item(i), mais comment savoir sur lequel de ces contrôles se trouve le focus.
 
Merci de m'éclairer. :hello:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Focus sur fenêtres MDI

 

Sujets relatifs
Joystique avec DirectX Sans fenetres...Problème de focus sur element <embed/>
[VBA - Excel] - RESOLU - Erreur de focus sur fonction "simple"changer focus d'un select en fonction choix autre select
[DOM/javascript] Focus sur la page mère (retour arrière)[Résolu]Fenêtres existentes et fenêtre active
Ouvrir des fenêtres sous plusieurs liens[Resolu][C#NET] Mettre le focus sur un onglet (pour le faire afficher)
Creer des fenetres en c++ --> C# ou C++ 
Plus de sujets relatifs à : Focus sur fenêtres MDI


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR