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

Delphi Discussion :

OnClick sur un bouton créé dynamiquement


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2003
    Messages : 119
    Par défaut OnClick sur un bouton créé dynamiquement
    Bonjour à tous,

    J'ai un petit souci avec le OnClick sur des boutons créé dynamiquement.
    Je crée toute une série de bouton dynamiquement à la création de la fiche et j'aimerai que quand je clique sur un de ces bouton, la valeur caption de ce bouton s'inscrive dans le caption de ma fiche, je sais, c'est certainement bête comme chou, mais je ne trouve pas.

    Quelqu'un pourrait-il m'aider

    Voici mon code
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    unit Unit1;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
     
    type
      TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
        procedure btn1Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
      end;
     
    var
      Form1: TForm1;
      btn1: TButton;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm1.FormCreate(Sender: TObject);
    var
      i: shortint;
      position: integer;
      valeur: shortint;
     
    begin
      position:= 8;
      valeur:= 65;
      for i:= 0 to 26 - 1 do
      begin
        btn1:= TButton.Create(Self);
        btn1.Parent:= Self;
        btn1.Left:= position;
        btn1.Top:= 8;
        btn1.Width:= 25;
        btn1.Caption:= chr(valeur);
        position:= btn1.Left + 30;
        valeur:= valeur + 1;
      end;
     
    end;
     
    procedure TForm1.btn1Click(Sender: TObject);
    begin
      Caption:= (Sender as TButton).Caption;
    end;
     
    end.
    Merci d'avance

    Jeankiki

  2. #2
    Expert confirmé
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 932
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.btn1Click(Sender: TObject);
    begin
      Form1.Caption:= (Sender as TButton).Caption;
    end;

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2003
    Messages : 119
    Par défaut
    J'ai déjà essayé mais ça ne fonctionne pas non plus, j'ai aussi essayé avec Self vu que Self est égale à Form1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Self.Caption:= (Sender as TButton).Caption
    ou aussi avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Self.Caption:= btn1.Caption;
    mais rien à faire ça ne fonctionne pas, as-tu une autre idée

  4. #4
    Membre confirmé
    Profil pro
    Enseignant
    Inscrit en
    Juillet 2004
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juillet 2004
    Messages : 128
    Par défaut
    Il faut surtout que tu rajoute cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    btn1.OnClick:=btn1Click;
    Ainsi tu as :

    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
    16
    17
    18
    19
    20
    21
    22
    23
    procedure TForm1.FormCreate(Sender: TObject);
    var
      i: shortint;
      position: integer;
      valeur: shortint;
     
    begin
      position:= 8;
      valeur:= 65;
      for i:= 0 to 26 - 1 do
      begin
        btn1:= TButton.Create(Self);
        btn1.Parent:= Self;
        btn1.Left:= position;
        btn1.Top:= 8;
        btn1.Width:= 25;
        btn1.Caption:= chr(valeur);
        btn1.Onclick:=btn1Click;
        position:= btn1.Left + 30;
        valeur:= valeur + 1;
      end;
     
    end;

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2003
    Messages : 119
    Par défaut
    Merci flash_math, j'avais complètement oublié, le problème est résolu

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

Discussions similaires

  1. Savoir sur quel bouton créé dynamiquement l'utilisateur a cliqué
    Par Pierre Fauconnier dans le forum Contribuez
    Réponses: 8
    Dernier message: 05/08/2011, 12h54
  2. Action sur des boutons crées dynamiquement
    Par barthelus76 dans le forum SWT/JFace
    Réponses: 13
    Dernier message: 28/06/2007, 20h32
  3. OnClick sur un component créé dynamiquement.
    Par aliwassem dans le forum Delphi
    Réponses: 3
    Dernier message: 01/11/2006, 22h04
  4. OnClick sur un Panel créé dynamiquement.
    Par tazthedev dans le forum Delphi
    Réponses: 8
    Dernier message: 21/10/2006, 01h07
  5. OnClick d'un Bouton créée dynamiquement
    Par ero-sennin dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/06/2006, 13h52

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