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

Composants VCL Delphi Discussion :

passage de paramètre autmatique entre handle de form ?


Sujet :

Composants VCL Delphi

  1. #1
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut passage de paramètre autmatique entre handle de form ?
    bonjour à tous.

    Décidement ces derniers jours je suis demandeur.

    Mon problème de ce topic est plutot une demande d'information qu'autre chose, il est un peu lié à un autre (enfin juste un peu).

    Voilà,

    Est-ce possible que lorsqu'on créé des forms dynamiquement que ces forms comportent par exemle un dbgrid dans le lequel j'ai ces 2 evenements :

    Mise en gras au clique sur colonne dbgrid

    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
    procedure TFTravail.DBGrid1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    Begin
      With Sender as TDBGrid Do With Canvas Do
      Begin
          if Column.FieldName = ColonneCliquee then
          Begin
            Column.Title.Font.Style := [fsBold];
        end
        else
          Column.Title.Font.Style := [];
      end;
     
    end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    procedure TFTravail.DBGrid1TitleClick(Column: TColumn);
    begin
      ColonneCliquee := Column.FieldName;
     
      DBGrid1.Invalidate;
    end;
    Lorsque je créé 2 ou 3 ou 10 fenêtres dynamiquement elles ont toutes les mêmes composants et donc les mêmes procédures.
    Et bien figurez vous que si j'affiche une table (dans une form créée en dynamique) comportant par exemple :
    Table CLIENT
    Code, Nom, Adr


    et qu'ensuite j'affiche dans la foulé une nouvelle form dynamique comportant cette fois :
    Table SALARIE
    Code, Nom, Adr


    Et bien si je clique sur la colonne de ma première form sur Code , il me mets en gras le mot Code (normal), mais si je passe dans ma seconde form (qui pourtant n'as rien à voir) je récupére la même chose !!!! le mot Code en gras !!!

    Hallucinant non ?

    Comment ce phénomène est possible ?

    Je précise que mes form créées en dynamique sont en fsMDIChild.

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    C'est à cause de l'utilisatation d'une variable globale ColonneCliquee. La première fois tu cliques, ColonneCliquee prend le nom de la colonne puis se redessine, ok ta colonne est bien en gras.

    Après tu passes à une autre fenêtre, elle se redessine et manque de chance une des colonnes à le même nom que ColonneCliquee. Pour corriger cela fait passer ColonneCliquee en tant que membre de la classe TFTravail plutôt que d'utiliser une variable globale.
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  3. #3
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Pfffff...

    J'ai vraiment riend ans la tête... tu cherche tu cherche et boom.

    Merci tu as résolu mon probleme. j'ai mis mon colonnecliquee en private...

    Thx

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

Discussions similaires

  1. Passage de paramètre à l'appel d'un Forms
    Par sibama dans le forum VB.NET
    Réponses: 7
    Dernier message: 13/12/2008, 22h15
  2. Passage de paramètres entre form
    Par thierry007 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/02/2007, 13h21
  3. [Forms 6i] Passage de paramètres entre forms
    Par tmcgrady dans le forum Forms
    Réponses: 8
    Dernier message: 18/03/2006, 04h04
  4. [Forms]Passage de paramètre entre Forms et Reports
    Par jack554 dans le forum Reports
    Réponses: 4
    Dernier message: 30/03/2004, 14h58

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