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

MFC Discussion :

Sélection d'un activeX dans une fenêtre


Sujet :

MFC

  1. #1
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 62
    Points : 53
    Points
    53
    Par défaut Sélection d'un activeX dans une fenêtre
    Salut à tous,

    J'ai une pte question, je voudrais savoir comment on peut faire pour sélectionner un activeX dans une fenêtre.
    Voici comment je m'y suis pris:

    Dans ma message map j'ai rajouté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ON_NOTIFY(ML_SELECTED,OCX_GEO_ID, OnClicGeo)
    Ensuite dans mon OnCreate je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    OcxGeoFinal.Create(S_EMPTY, WS_CHILD | WS_VISIBLE, CRect(CPoint(265,186), CSize(353, 25)),this, OCX_GEO_ID);
    OcxGeoFinal.SetTypeReferentiel(GEO);
    OcxGeoFinal.SetMode(FALSE);
    OcxGeoFinal.ShowWindow(SW_SHOW);
    et voici mon gestionnaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void CWndManSaisie::OnClicGeo(NMHDR*, LRESULT*)
    {
    	AfxMessageBox(_T("coucou"));
    }
    Mais ceci ne fonctionne pas!

    Pour résumer, je voudrais ouvrir un pop-up quand je clique sur mon activeX.

    Quelqu'un pourrait m'éclairer?

    Cathar_Rhythm ->

  2. #2
    Membre éclairé
    Avatar de matazz
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    471
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 471
    Points : 668
    Points
    668
    Par défaut
    A mon avis, si tu veut faire un menu pop-up (si j'ai bien compris) avec les histoires de focus, je te conseille de le faire directement dans l'OCX.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 62
    Points : 53
    Points
    53
    Par défaut
    Je suis d'accord avec toi, mais je n'est pas les sources de l'ocx.
    En plus c'est une version final.

    J'ai une solution qui serait de faire un SetCapture(), mais le pb c'est que tout les messages vont être redirigé sur ma fenêtre, or il y a pas d'évènement en amont et aval de cette fenêtre qui sont essentiels aui fonctionnement de l'appli.

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    un activex dispose de methodes specifiques concernant le clic etc si le concepteur l'a prevu bien sur.
    ces notifications ne vont pas dans le messagemap mais plutot dans un section de ce style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //-------------------------------------------------------------------
    BEGIN_EVENTSINK_MAP(CDlgToto, CDialog)
        //{{AFX_EVENTSINK_MAP(CDlgToto)
    	ON_EVENT(CDlgToto, IDC_OK, -600 /* Click */, OnClickOk, VTS_NONE)
    	ON_EVENT(CDlgToto, IDCANCEL, -600 /* Click */, OnClickCancel, VTS_NONE)
    	//}}AFX_EVENTSINK_MAP
    END_EVENTSINK_MAP()
    dans le cas d'un controle créé dynamiquement il faudra d'abord faire l'essai avec un controle fixe pour savoir quel type de message il faut rajouter manuellement.


  5. #5
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 62
    Points : 53
    Points
    53
    Par défaut
    Ok, donc si je comprned bien, je ne peux rien faire. Il fautdrait que mon client reprogramme l'activeX pour y inclure cette fonctionnalité. Et je ne peux pas terminer mon appli sans cet activeX!

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    ce que tu peux essayé de faire c'est une classe dérivée de cet activex et
    d'intercepter le clic gauche comme avec un contrôle normal.
    et eventuellement envoyer un message notify a la fenetre parent
    comme expliqué ici:
    http://c.developpez.com/faq/vc/?page...s#PrivateNotiy

  7. #7
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 62
    Points : 53
    Points
    53
    Par défaut
    Salut,

    En effet c'est même très bien cette idée, je n' y avais pas pensée!
    Je vais l'essayer pour voir!

    Cathar_rhythm ->

Discussions similaires

  1. sélection dans une fenêtre modale IE (window.showModalDialog)
    Par shoryu-ken dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 20/03/2012, 14h33
  2. Sélection de fichiers dans une fenêtre
    Par web59matth dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/08/2010, 11h40
  3. [WD12E] Sélection des enregistrements dans une fenêtre RAD
    Par nambours dans le forum WinDev
    Réponses: 4
    Dernier message: 26/04/2010, 09h16
  4. Réponses: 3
    Dernier message: 19/10/2006, 09h51
  5. [JDialog] Modification dans une fenêtre
    Par cefabien dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 01/10/2003, 13h18

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