IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Shortcut ou raccourci dans fenetre MDI


Sujet :

C++Builder

  1. #1
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    28
    D�tails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 28
    Par d�faut Shortcut ou raccourci dans fenetre MDI
    Bonjour � tous,

    Je travaille avec C++Builder 6.0 sous Windows 2000.

    J'ai une application MDI cr�� qui int�gre un menu avec des raccourci ainsi que des listes d'actions �galement associ�s � des raccourci (propri�t� shortcut si je me rapelle bien).

    Lorsque je suis dans mon application et que je n'ai pas ouvert de fenetre fille, tous les raccourcis fonctionnent bien. Par contre une fois que dans le code je cr�e une fenetre MDI fille dans la fenetre parent et que je suis par exemple dans un edit box de ma fenetre fille et que je tappe le raccourci du menu de ma fenetre MDI parente... rien ne se passe, l'action n'est pas declench�.

    Du coup je me demande s'il ne faut pas en qq sorte rediriger les shortcut dans le cas ou on fait du MDI depuis les fenetre filles vers la fenetre mere.

    Qu'en pensez vous ? Si qqun a une solution...

    Merci d'avance !

  2. #2
    Membre Expert Avatar de rtg57
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2006
    Messages
    1 343
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Autodidacte
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 343
    Par d�faut
    Bonjour,

    personnellement, j'essaierai de voir si la fen�tre principale re�oit le message du ShortCut, alors que l'EditBox de la fen�tre fille a le focus.

    Il suffit pour cela de mettre un point d'arr�t dans le gestionnaire d'�v�nement traitant le ShortCut dans la fen�tre m�re.

    Si le message est bien re�u, alors j'enverrais via la messagerie, un message depuis la fen�tre m�re vers toutes les fen�tres filles existantes, indiquant qu'un ShortCut a �t� activ�.
    Ensuite je ferais en sorte que chaque fen�tre fille envoie ce message � tous leurs composants. De cette fa�on, l'EditBox finirait bien par r�agir au ShortCut.

    Il faut pour cela �tudier les fonctions SendMessage, PostMessage, Perform, et BroadCast.

    Bon courage

    @+

  3. #3
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    28
    D�tails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 28
    Par d�faut
    Salut rtg57,

    Alors pour etre plus precis, non la fenetre parent ne recoit pas le raccourci quand il est tap� a partir de la fenetre fille et c'est bien la mon probleme.

    En fait ce raccourci est "bidon", il permet juste d'acceder � un bout de menu pour faire apparaitre une boite de dialogue. Cette action n'a pas ensuite � se r�percuter � nouveau sur les fenetre filles. Il faut juste que la fenetre fille puisse, via le raccourci, "executer" l'action de cliquer sur un bouton de mon menu de fenetre mere. Exactement comme si j'avais directement cliqu� dessus.

    Et pas moyen de voir si ceci est normal ou si c'est un "bug" qui empeche la redirection des shortcut vers la fenetre MDI parente.

  4. #4
    Membre Expert Avatar de rtg57
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2006
    Messages
    1 343
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Autodidacte
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 343
    Par d�faut
    Bonjour,

    si je comprend bien, la fen�tre fille capte l'�v�nement du ShortCut, et elle doit d�clencher une action au niveau de la fen�tre m�re.

    Si telle est le cas, j'ai peut �tre une id�e � bidouiller

    On peut imaginer un TTimer qui tourne au niveau de la fen�tre m�re.
    Dans la proc�dure de gestion de ce Timer, on pourrait scruter des variables bool�ennes g�r�es par les fen�tre filles.

    Lorsqu'une fen�tre fille voudrait indiquer � la fen�tre m�re qu'un shortcut est activ�, elle mettrait � true un drapeau...
    Lorsque la fonction OnTimer de la fen�tre m�re serait trait�e sur ordre du Timer, elle verrait que tel ou tel drapeau serait activ�, et enclencherait des actions appropri�es. On pourrait d�cr�ter un interval de 200ms pour le Timer, de fa�on � r�agir assez rapidement mais sans trop bouffer de ressource CPU.

    C'est de la bidouille, mais je pense que �a devrait marcher .

    @+

  5. #5
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Responsable de compte
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par d�faut
    bonjour
    la fen�tre parente doit �galement avoir son propre gestionnaire d'action
    vous trouverez mes tutoriels � l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les r�gles du forum

Discussions similaires

  1. Minimiser toutes les fenetres dans une MDI
    Par arnobase dans le forum Forms
    R�ponses: 46
    Dernier message: 04/09/2007, 10h37
  2. Bug WxWidgets dans les fenetres MDI ?
    Par Muetdhiver dans le forum wxWidgets
    R�ponses: 1
    Dernier message: 04/06/2007, 15h26
  3. [VB6] Ouverture d'une nouvelle fenêtre dans un MDI
    Par pepper dans le forum VB 6 et ant�rieur
    R�ponses: 8
    Dernier message: 17/02/2003, 14h03
  4. [VB6] Position d'une MDIchild dans un MDI
    Par pepper dans le forum VB 6 et ant�rieur
    R�ponses: 6
    Dernier message: 29/01/2003, 14h02
  5. Impression dans une MDI Application
    Par Andry dans le forum Composants VCL
    R�ponses: 8
    Dernier message: 19/12/2002, 08h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo