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 :

Création dynamique d'onglets


Sujet :

Delphi

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Points : 45
    Points
    45
    Par défaut Création dynamique d'onglets
    Bonjour,

    Je travaille sur un projet en Delphi (c'est la première fois que j'y touche) et j'ai choisis dans un soucis d'ergonomie, de mettre en place des onglets.
    J'explique mon problème :
    Lors du lancement de mon application, j'ai un seul onglet "accueil" qui s'ouvre, celui possède différents boutons. Je veux que lorsque l'utilisateur appuis sur l'un des boutons, un onglet s'ouvre dynamique avec la page correspondant à son choix.

    Voila ce que j'ai essayer de faire, juste pour le premier bouton "Communauté"

    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
    unit Unit1;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ComCtrls, StdCtrls;
     
    type
      TForm1 = class(TForm)
        TPageControl1: TPageControl;
        Accueil: TTabSheet;
        Label1: TLabel;
        Label2: TLabel;
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        Button4: TButton;
        Button5: TButton;
        procedure Button1Click(Sender: TObject);
      private { Déclarations privées }
     
      public { Déclarations publiques }
        Communaute: TTabSheet;
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Communaute := TTabSheet.create(self);
      Communaute.parent := TPageControl1;
      Communaute.Caption := 'Communauté';
    end;
     
    end.
    J'espère que vous pourrez m'aider à avancer.

    Merci d'avance.

    Spirit

  2. #2
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Salut,

    Tu as une remarque et un oublie
    Je mettrais plutôt ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Communaute := TTabSheet.create(TPageControl1);
    à la place de cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Communaute := TTabSheet.create(Self);
    Ainsi, lorsque TPageControl1 est détruit, les fiches qui lui sont associées sont détruites également.

    Ensuite, il te manque une info. Tu dois dire à quelle PageControl doit être affecté le TabSheet (hé oui, malgré le fait que l'on a spécifié le Parent, on doit lui mettre cette info )

    Ce qui donne le tout réuni ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Communaute := TTabSheet.create(Self);
      Communaute.parent := TPageControl1;
      Communaute.Caption := 'Communauté';
      Communaute.PageControl:=TPageControl1;
    end;
    Voilà
    A+!

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Points : 45
    Points
    45
    Par défaut
    Super ça marche !

    Merci.

  4. #4
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Citation Envoyé par SpIrIt505050 Voir le message
    Super ça marche !

    Merci.
    De rien

    N'oublies pas le petit

    Merci

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

Discussions similaires

  1. [Débutant] Création dynamique d'onglets - Multiview
    Par hugues79 dans le forum VB.NET
    Réponses: 1
    Dernier message: 25/07/2012, 15h41
  2. Création dynamique d'un onglet avec template
    Par abraxis dans le forum Ext JS / Sencha
    Réponses: 3
    Dernier message: 09/11/2010, 10h21
  3. Création dynamiquement d'onglet
    Par dederfred dans le forum Delphi
    Réponses: 2
    Dernier message: 01/10/2006, 06h41
  4. création dynamique d'onglets dans d'autres onglets
    Par chourmo dans le forum Delphi
    Réponses: 4
    Dernier message: 18/07/2006, 12h12
  5. Création dynamique de TImages
    Par Dric dans le forum C++Builder
    Réponses: 10
    Dernier message: 08/07/2002, 12h36

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