Utilisation des groupbox

Signaler
Messages postés
3
Date d'inscription
jeudi 19 mars 2009
Statut
Membre
Dernière intervention
3 septembre 2009
-
Messages postés
3
Date d'inscription
jeudi 19 mars 2009
Statut
Membre
Dernière intervention
3 septembre 2009
-
Bonjour,

J'ai déjà eu l'occasion de manipuler quelques composants delphi, mais ca restait pas mal de la bidouille.

J'aimerais créer un programme dans lequel lorsque je clique sur un bouton (ou une ligne d'un mainmenu) un groupbox avec quelques composants soient créés sur ma fenêtre.

Pour tout ce qui est de la gestion des noms, des positions des composants, je gère.
Ce qui me pose problème c'est le fait de "créer" un nouveau groupbox a chaque fois que je clique sur mon bouton.

Quelqu'un pourrait-il m'aider a ce sujet ? M'indiquer une méthode ou procédure miracle ??
Ou même m'indiquer ou je peux trouver des explications sur le fonctionnement du composant et ses méthodes ?

Merci d'avance.

5 réponses

Messages postés
92
Date d'inscription
vendredi 12 octobre 2007
Statut
Membre
Dernière intervention
20 novembre 2009
1
Est ce que tu souhaite vraiment créé dynamiquement ton composant, ou simplement le rendre visible?

Si ton GroupBox à sa propriété Visible à false, pour l'afficher il suffit de faire lors du clic sur ton bouton:

GroupBox1.Visible := true ;
Messages postés
3809
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
18 mai 2020
29
Salut,

et tu peux même faire une "bascule" sur le bouton :

GroupBox1.Visible := not GroupBox1.Visible;

donc à chaque appuis sur le bouton le GroupBox sera Visible/non Visible

si tu désires vraiment en créer, fais une recherche sur "la création dynamique de composants"

[hr]@+Cirec
[hr]
Messages postés
4199
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
28
delphi 2009 ou version plus ancienne ?
Messages postés
3
Date d'inscription
jeudi 19 mars 2009
Statut
Membre
Dernière intervention
3 septembre 2009

En fait je souhaite ajouter (/créer) un groupbox a chaque pression du bouton et constituer une liste au fur et a mesure, donc oui il s'agit bien de créer dynamiquement.

Le coup du groupbox.visible := true ca m'oblige a mettre un nombre déféni de composants, ce qui ne m'arrange pas du tout. En revanche je découvre un truc avec le coup de la "bascule".

Pour le delphi il s'agit du 2007.

Merci
Messages postés
3
Date d'inscription
jeudi 19 mars 2009
Statut
Membre
Dernière intervention
3 septembre 2009

Bon, après quelques recherches sur la création dynamique de composants, j'ai résolu mon problème :

procedure TForm1.AjouterClick(Sender: TObject);
begin
   GroupBox := TGroupBox.Create(self);
   With GroupBox do
    begin
      GroupBox.parent := Form1;  
      GroupBox.Caption := 'Box' + inttostr(j);  // j est un compteur initialisé à l'ouverture
      GroupBox.Width := 50;                     // pour incrémenter le nom des groupbox
      Groupbox.left := 5;
      GroupBox.Height := 30;
      GroupBox.Top := i;
    end;
    i := i + 40;    // i est un autre compteur pour gérer la position des groupbox
    j := j + 1;
end;


Maintenant faut que je colle une barre de défilement quand les groupbox sortent de la fenetre ^^

Si quelqu'un a une autre suggestion pour la création des groupbox, je suis preneur.

Merci a tous pour votre aide.