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 :

Fonction dans une RichEdit?


Sujet :

C++Builder

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2007
    Messages : 216
    Par défaut Fonction dans une RichEdit?
    Bonjour,

    J'ai un RichEdit dans lequel j'affiche un récapitulatif de mes paramètres de la manières suivantes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Paramètres calcul 
        type = 1 
        ....
    Paramètres source
        ...
    Pour modifier ces paramètres, je passe par un onglet dans le menu qui m'ouvre une fenetre ou je peux les modifier. Est-il possible d'accéder directement à cette fenetre sans passer par l'onglet dans le menu mais en cliquant par exemple sur "Paramètres calcul" dans ma RichEdit, un peu comme lorsque qu'on clique sur un lien sur une page web?

    Ou bien peut-on rajouter un petit bouton dans la RichEdit à côté de l'entête "paramètres calcul" qui m'ouvrirait lorsque je clique dessus directement la fenetre en question me permettant de modifier les paramètres calcul?

    J'espère que c'est clair...
    Si vous avez une idée...
    Merci d'avance

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    On peut éventuellement rajouter un TObject par ligne, ce qui suppose d'affecter ou non un dérivé de TObject à chaque ligne.
    Le numéro de ligne s'obtient par : RichEdit->CaretPos.y qu'on peut donc récupérer au moment du clic (ou lors d'un OnMouseDown).
    A utiliser si les lignes peuvent être modifiées (contexte dynamique).

    On devrait donc pouvoir traiter comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    int i = RichEdit->CaretPos.y;
    TObject *O = RichEdit->Lines->Objects[i];
    if(O != NULL)
        {
        //on tient un objet... il faudra donc interroger l'objet sur la classe...
        if(O->ClassNameIs("..."))
            {
            ... ici on a quelque chose de connu...
            //Par exemple une classe TFormN :
            //TFormN *F = (TFormN*)O;
            //F->Show(); // ou ShowModal ...selon...  
            }
        }
    Plus simplement, on pourrait aussi traiter directement avec le numéro de ligne à l'aide d'un switch à condition que les lignes ne soient jamais modifiées ou se présentant toujours dans le même ordre (contexte statique).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    switch(RichEdit->CaretPos.y)
        {
        case n :
        FormN->Show();
        break;
        }
    En espérant avoir compris le problème...

    A plus !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2007
    Messages : 216
    Par défaut
    Merci de ta réponse

    Mais dans les deux cas, cette méthode ne permettrait pas à l'utilisateur de comprendre facilement qu'en cliquant sur "Paramètres calcul" cela va ouvrir une fenetre, dans le sens où le titre "Paramètres calcul" n'apparaitrait pas comme un bouton ou quelque chose du style.

    Mais peut etre je me trompe...
    Une autre idée peut etre?

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    J'aurais bien d'autres idées mais sans le TRichEdit qu'il vaut mieux employer pour ce qu'il vaut et pas pour autre chose (à mon humble avis !!!).

    A plus !

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2007
    Messages : 216
    Par défaut
    Peut être existe t-il un composant plus adapté à ce que je désire faire?

Discussions similaires

  1. Comment rappeler une fonction dans une liste déroulante
    Par strogos dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 05/05/2005, 23h54
  2. gerer le copier/coller dans une richEdit
    Par SBP dans le forum MFC
    Réponses: 4
    Dernier message: 10/02/2005, 21h00
  3. Réponses: 6
    Dernier message: 18/01/2005, 16h24
  4. fonction dans une href
    Par deeal dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/11/2004, 12h33
  5. [VStudio 6] pb avec fonctions dans une DLL
    Par MogDeChNord dans le forum MFC
    Réponses: 8
    Dernier message: 08/01/2004, 08h57

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