begin process at 2010 02 10 03:09:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Algorithme

 > 

Autre

 > 

Composants Dynamiques et Array


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Composants Dynamiques et Array

dimanche 22 octobre 2006 à 21:37:19 | Composants Dynamiques et Array

picolo5

Membre Club

Bonsoir à tous !!

j'ai un piti souci avec des composants dynamiques (TCustomPanel + autres composants) que je stockent dans un tableau.

Le probleme se situe lors de suppression avec remonté des éléments. Le rafraichissement ne se fait pas.
Je met un bout de code simplifé ou je permutte deux elements.

Code :

type
  TMonP = class(TCustomPanel)
    private
      { Déclarations privées }
    public
      constructor create(AOwner : TComponent;y :integer);
      { Déclarations publiques }
  end;

var
  Form1: TForm1;
  TabP : array[0..10] of TMonP;

implementation

{$R *.dfm}
constructor TMonP.create(AOwner : TComponent;y: integer);
begin
  inherited Create(AOWner);
  parent := Form1;
  BorderWidth := 0;
  Left := 0;
  Top := y;
  Width  := 100;
  Height := 100;
  Caption := inttostr(y);
  Enabled := true;
  //FullRepaint := true;
  Visible := true;
end;

procedure TForm1.CreerClick(Sender: TObject);
var
 TempTMonP : TMonP;
begin
  TabP[0] := nil;
  TabP[1] := nil;
  TabP[0] := TMonP.create(self,100);
  TabP[1] := TMonP.create(self,250);
end;

procedure TForm1.EchangerClick(Sender: TObject);
var
   TempTMonP : TMonP;
begin

  TempTMonP := TabP[0];
  TabP[0] := TabP[1];
//TabP[0] := Tab[1].Caption;
  TabP[1] := TempTMonP;
//TabP[1] := TempMonP.Caption;

end;

J'ai fait de nombreux essais en déclarant la procedure Repaint, Refresh....
Si je supprime le commentaire alors cela fonctionne. Dans mon cas le pannel contient de nombreux object, c est un peu contraignant....

Help !

Merci

lundi 23 octobre 2006 à 10:04:14 | Re : Composants Dynamiques et Array

Loda

Membre Club
salut, Je suis pas sur de comprendre, ton exemple ne devrait PAS provoquer de rafraichissement. puisque tu ne fait que changer l'emplacement en mémoire des tes pointeurs. tes panels sont toujours au même endroit sur la fiche... procedure TForm1.EchangerClick(Sender: TObject); var TempTop : integer; begin TempTop := TabP[0].Top; TabP[0].Top := TabP[1].Top; TabP[1].Top := TempTop; end; Sinon, une proposition (non-testée) as-tu essayer d'appeler .Invalidate ? Ne connaissant pas ton niveau, j'attire ton attentention sur le inherited necessaire lors que tu implémente une fonction existante dans une class parent (genre repaint) bonne chance.
lundi 13 novembre 2006 à 18:53:47 | Re : Composants Dynamiques et Array

picolo5

Membre Club
Réponse acceptée !
Je m'était très mal expliqué.. désolé.

Merci tout de même pou ta réponse !


Cette discussion est classée dans : end, composants, create, tabp, tmonp


Répondre à ce message

Sujets en rapport avec ce message

Besoin d'un expert Delphi pour résoudre un souci de traitement de sous-propriété d'un composant. [ par Rycku ] Bonjour,Je vais essayer d'être le plus clair possible, voilà quatre semaines que je suis bloqué sur un probléme malgré toutes mes recherches sur diver raise Exception.Create : gérer les exceptions ? [ par manudel ] Voilà je ne sais pas comment "catcher" une exception.L'exception se déclenche, et à mon avis remonte au niveau le plus haut, en cherchant un gestionna Envoye d'un BMP par les composants Indy sur un serveur [ par Francky23012301 ] Salut à tous, J'ai un bmp que je souhaite transferer sur un serveur par les composants Indy. Je vous copie ma source : procedure TForm1.sendstr; var Creation d'un composant graphique [ par Sat83 ] Bonjour!Je me suis lancée dans la création de mon premier composant graphique, mais j'ai un petit probleme.En gros, je veut creer un composant de type Problème création thread [ par VolaiL ] Bonjour, j'ai un petit problème de création de thread.Je souhaiterai lancer le thread lorsqu'on appuie sur enter, mais ca bloque dès la crétion sur "i Composant : TImage dans un TScrollBox [ par Francky23012301 ] Salut à tousJe suis entrain de réaliser un composant héité d'un TScrollBox permettant d'afficher horizontalement une liste d'image via un composant dé Socket connecte mais pas de communication client / serveur [ par Trakers666 ] Bonjour je travaille depuis quelques temps avec les composants TServerSocket et TClientSocket sous BDS 2006 mais sur ma derniere application destinee Création de composant : modifier une sous propriete à partir d'une autre [ par orelien ] Bonjour,J'ai crée un composant héritant de TGraphicControl :unit Circle; interface uses  Windows, Messages, SysUtils, Classes, Graphics, Controls, TObjectList , Remove [ par Nicolas___ ] Bonjour , J'ai un gros problème de libération de mémoire et je ne vois pas ou est mon erreur ... J'ai une structure de ce type : type  TMyObject  = cl exo sur les tableau pour les debutents [ par aom2009 ] ce programme c'est pour s'exercer sur les tableaux ecrit par aom2009 program tab_de_2dimension; uses crt; {itroduction


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales