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 :

question de néophite


Sujet :

C++Builder

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 6
    Points
    6
    Par défaut question de néophite
    Bonjour,
    je m'intéresse au C++ et je débute. Pourriez-vous m'indiquez pourquoi lors que le composant est invisible, je n'arrîve pas à le rendre visible avec les lignes de code suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    void __fastcall TForm1::Memo1MouseMove(TObject *Sender, TShiftState Shift,
          int X, int Y)
    {
           if (Memo1->Visible==true)
              Memo1->Hide();
              else Memo1->Show();
    }
    Merci de votre réponse
    chiennoir

  2. #2
    Membre expert
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Points : 3 204
    Points
    3 204
    Par défaut
    Bonjour,
    Si ton composant n'est pas visible, il ne vas capter ni les évènements souris ni les évènements lclavier...
    @ +
    Aux persévérants aucune route n'est interdite.
    Celui qui ne sait pas se contenter de peu ne sera jamais content de rien.
    Current Status
    Avec 40% de pollinisateurs invertébrés menacés d'extinction selon les Nations Unies, l'homme risque fort de passer de la monoculture à la mono diète...
    Faîtes quelque chose de bien avec vos petits sous: Enfants du Mekong

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse. Mais est-ce que cela veut dire qu'il est impossible de faire réagir un élément qui n'est pas visible? N'y a-t-il pas une solution?

  4. #4
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    chiennoir a ecrit:
    Bonjour,
    je m'intéresse au C++ et je débute. Pourriez-vous m'indiquez pourquoi lors que le composant est invisible, je n'arrîve pas à le rendre visible avec les lignes de code suivantes:
    Une forme deux boutons.
    le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    Memo1->Visible = true;
    }
    //---------------------------------------------------------------------------
     
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
    Memo1->Visible = false;
    }
    bouton1 rend le TMemo1 Visible
    bouton2 rend le TMemo1 Invisible
    Si c'est ce que tu cherche adapte ces quelques lignes.
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci à toi Blondelle pour ta réponse. Mais ce que je souhaite c travailler sur le même composant. C'est à dire que je veux que lorsque le composant est invisible, en repassant dessus avec la souris, il réapparaisse. Ca marche pour le faire disparaître mais pas le contraire.

  6. #6
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    chiennoir a ecrit:
    Merci à toi Blondelle pour ta réponse. Mais ce que je souhaite c travailler sur le même composant. C'est à dire que je veux que lorsque le composant est invisible, en repassant dessus avec la souris, il réapparaisse. Ca marche pour le faire disparaître mais pas le contraire.
    Tu connait la position de to TMemo sur ta forme avec l'evenement "OnMouseMove" en faisant un teste sur les coordonnees tu devrait y arriver.
    Quand pense tu Sunchaser.
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  7. #7
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    En tout cas moi je pense que c'est une bonne idée (je sais on ne m'a pas demandé mon avis, je m'en vais )
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  8. #8
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Ton TMemo sur la form a une position Top Left et une dimension Height Width
    Avec l'evenement OmouseMove de la form tu connait la position de la sourie sur celle-ci donc quand elle entre dans le cadre du TMemo tu declanche la propriete visible du TMemo
    un exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    // coordonnees du TMemo
    // Top = 144
    // Left = 76
    // Height = 89
    // Width = 185
     
    void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
          int X, int Y)
    {
    if ( X > 76 && X < 261 && Y > 144 && Y < 233)
    {
    Memo1->Visible = true;
    }
    }
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  9. #9
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    pottiez a ecrit:
    En tout cas moi je pense que c'est une bonne idée (je sais on ne m'a pas demandé mon avis, je m'en vais )
    Personnellement je suis toujours comptant de recevoir un avis, la demande s'adressait a Sunchaser qui avait poste, je pense que le sujet est ouvert a tous le monde, en tout cas merci et ne soit plus triste s'il te plait.
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  10. #10
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Par contre une remarque, les coordonnée de la souris sont prisent par rapport au bord de l'écran il me semble alors que les coordonné du TMemo par rapport au bord de la fenetre, ce qui n'est pas forcément les même.
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  11. #11
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    C'est une bonne remarque mais la je ne sais pas, j'ai fait un essai juste pour voir apparement ca marche chez moi avec une fenetre au milieu de l'ecran?
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  12. #12
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    J'ai fait un essai en bougeant la form a plusieurs endroit de la fenetre et ca marche? ca doit prendre en compte les bords de la forme
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  13. #13
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Je ne peut pas verifier ca avant demain soir alors si c'est pas résolu je dirai quoi, si quelqu'un peut donner l'info avant tant mieux
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  14. #14
    Membre expert
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Points : 3 204
    Points
    3 204
    Par défaut
    Citation Envoyé par blondelle
    chiennoir a ecrit:

    Tu connait la position de to TMemo sur ta forme avec l'evenement "OnMouseMove" en faisant un teste sur les coordonnees tu devrait y arriver.
    Quand pense tu Sunchaser.
    Je pense que c'est surement la plus simple et la plus rapide des solutions....non ?
    Maintenant, on peut toujours solliciter Henderson, que je me permet de surnommer (juste pour blaguer, sans vouloir blesser ... hein !) : 'TCustomControl-Man', qui pourrait surement proposer un truc avec une dérivé d'un ancêtre du TMemo etc, etc, etc...

    @ +
    Aux persévérants aucune route n'est interdite.
    Celui qui ne sait pas se contenter de peu ne sera jamais content de rien.
    Current Status
    Avec 40% de pollinisateurs invertébrés menacés d'extinction selon les Nations Unies, l'homme risque fort de passer de la monoculture à la mono diète...
    Faîtes quelque chose de bien avec vos petits sous: Enfants du Mekong

  15. #15
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Sunchaser a ecrit:
    Je pense que c'est surement la plus simple et la plus rapide des solutions....non ?
    Maintenant, on peut toujours solliciter Henderson, que je me permet de surnommer (juste pour blaguer, sans vouloir blesser ... hein !) : 'TCustomControl-Man', qui pourrait surement proposer un truc avec une dérivé d'un ancêtre du TMemo etc, etc, etc...
    Je me recite le poste est ouvert a tout le monde je pense pour que personne ne soit triste
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  16. #16
    Membre chevronné

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

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 379
    Points : 1 765
    Points
    1 765
    Par défaut
    Salut !

    Voici ce que j'en pense, si le memo est posé directement sur la form :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
          int X, int Y)
    {
    TRect R = Memo1->BoundsRect;
    Memo1->Visible = ((X < R.Right) &&
                      (X > R.Left) &&
                      (Y < R.Bottom) &&
                      (Y > R.Top));
    }
    En espérant avoir bien compris ce que l'on cherche à faire...
    Si c'est le cas, on peut éventuellement rajouter un test supplémentaire pour éviter de solliciter le memo à chaque mouvement de la souris sur la form...
    Ca ne sert à rien de le rendre de plus en plus invisible...
    A plus !

  17. #17
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    henderson a ecrit:
    Salut !

    Voici ce que j'en pense, si le memo est posé directement sur la form :


    Code:
    void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
    int X, int Y)
    {
    TRect R = Memo1->BoundsRect;
    Memo1->Visible = ((X < R.Right) &&
    (X > R.Left) &&
    (Y < R.Bottom) &&
    (Y > R.Top));
    }
    En espérant avoir bien compris ce que l'on cherche à faire...
    Si c'est le cas, on peut éventuellement rajouter un test supplémentaire pour éviter de solliciter le memo à chaque mouvement de la souris sur la form...
    Ca ne sert à rien de le rendre de plus en plus invisible...
    A plus !
    Belle lecon de programmation.
    Une petite question si on rend le TMemo de plus en plus invisible est-ce qu'il devient transparent?
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  18. #18
    Membre habitué

    Profil pro
    Cadre
    Inscrit en
    Mars 2006
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Cadre

    Informations forums :
    Inscription : Mars 2006
    Messages : 132
    Points : 168
    Points
    168
    Par défaut
    Y'a pas de propriété AlphaBlendValue sur le TMemo, me trompe-je?
    Du bon sens tu auras
    Du bon sens tu auras encore
    Du bon sens tu auras toujours
    http://emilien.bresson.free.fr

  19. #19
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Tenguryu a ecrit:
    Y'a pas de propriété AlphaBlendValue sur le TMemo, me trompe-je?
    Je l'ai vue sur la Form mais pas sur le TMemo?
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  20. #20
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci à tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Kylix] Compiler un source Delphi 7
    Par oamram dans le forum EDI
    Réponses: 7
    Dernier message: 05/02/2006, 19h35
  2. Divers questions
    Par Freakazoid dans le forum DirectX
    Réponses: 2
    Dernier message: 06/08/2002, 21h57
  3. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 16h11
  4. Question de faisabilité
    Par lisarasu dans le forum CORBA
    Réponses: 3
    Dernier message: 14/05/2002, 11h26
  5. [HyperFile] 2 questions de débutant
    Par khan dans le forum HyperFileSQL
    Réponses: 2
    Dernier message: 29/04/2002, 23h18

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