Composant panel

Résolu
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007 - 26 avril 2006 à 21:42
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 - 28 avril 2006 à 22:56
bjr a tous je veux commencer a creer des composants et j'ai besoin de votre aide,
est ce que quelqun peut me donner le source d'un composant panel avec un autre panel dedans pour me servir d'exemple.
merci
bye

9 réponses

f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
27 avril 2006 à 03:15
c:\programes files\borland\delphi*\sources\vcl\

fichier StdCtrls.pas, ExtCtrls.pas, ComCtrls.pas

un panel dans un panel c'est simple :

type
   TDoublePanel = class(TPanel)
      FInPanel : TPanel;
   published
      property InPanel : TPanel read FInPanel write FInPanel;
   public
      constructor Create(AOwner : TComponent); override;
      destructor Destroy; override;
   end;

implementation

constructor TDoublePanel.Create(AOwner : TComponent);
begin
  inherited create(AOwner);
  FInPanel := TPanel.Create(Self);
  FInPanel.Parent := Self;
//  FInPanel.width .height .left .top etc...
end;

Destructor TDoublePanel.Destroy;
begin

  FInPanel.Free;

  inherited Destroy;
end;
3
Utilisateur anonyme
26 avril 2006 à 22:03
Salut,

Désolé mais si tu veux une source, tu peux faire l'effort de la chercher : Ce n'est pas à nous de le faire à ta place.

A+
0
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007
26 avril 2006 à 22:28
c'est ce que j'ai fait avant de vous poser la question, si je demande une source c pour me servir d'exemple.
0
Utilisateur anonyme
26 avril 2006 à 23:22
Re,

Tu as le composannt TPanel dans Delphi il est livré avec.

Comment veux tu réussir à faire un composant si tu es meme pas capable de récuperer la source d'un que tu possèdes ? Tu devrais peut être commencer par la non ? C'est le début je penses ?

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
27 avril 2006 à 09:01
Toujours aussi bon f0xi. (Bon dans les deux sens du terme (bon bon et bon généreux)...
Que seraient les gens qui exigent tout sur le forum sans toi? (lol)...
Bon je sors... ^^

<hr size="2" width="100%">La paresse est la mère du génie...
0
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007
27 avril 2006 à 12:51
merci a toi foxi, je confirme ce que dit matt261.
0
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
27 avril 2006 à 15:01
f0xi, l'homme au grand coeur...

<hr size="2" width="100%">La paresse est la mère du génie...
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
27 avril 2006 à 16:16
Salut,
je si viens foutre mon grain de sel ici c'est que j'ai une petite question pour l'amis F0xi :

N'est il pas préférable de dériver directement de TCustomPanel à la place de TPanel
Il me semble avoir lu cela quelque par et qu'elle était même faite pour ça, comme toutes les classes qui commence par TCustom....

La classe TPanel ne fait que publier des propriétés héritées de ces ancêtres.

Enfin il me semble..
@+
Cirec
0
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
28 avril 2006 à 22:56
oui cirec! tu as tout a fait raison! mais ce n'est pas obligatoire ... par contre dans un soucis d'ecrire du code propre on utiliserat de preferences les classes TCustom*

c'est vrai qu'on y pense jamais ... une erreur habituelle.

mais cela depend, car d'un TPanel a TCustomPanel par exemple, certaines prop sont cachée ... il faut donc publier ces propriétés.

sur un exemple comme celui-ci on peu derivé directement de TPanel, ce qui nous permet de ne pas a avoir a publier ces propriété.
par contre si l'on veut deriver completement TPanel en un composant plus evolué on partiras de TCustomPanel.

un peu comme si on voulais juste ajouter une petite fonctionnalitée a un composant existant ou refaire un composant basé sur un autre.

donc tout depend de ce que l'on veut faire ... mais pour l'exemple, derivé directement de TCustomPanel n'est pas necessaire.
0
Rejoignez-nous