Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1332 connectés 

  FORUM HardWare.fr
  Programmation

  [Delphi6] err à l'insertion d'un composants perso ds une fiche

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Delphi6] err à l'insertion d'un composants perso ds une fiche

n°92888
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 14:38:08  profilanswer
 

voilà, c'est encore moi avec un nouveau pb que je ne comprend pas bien :
 
voilà le constructeur :
TSpectrumDisplayer = class(TPaintBox, ISpectrumDisplayer)
[...]
   public
       constructor Create(AOwner: TComponent); override;
[...]
end;
 
 
constructor TSpectrumDisplayer.create(AOwner: TComponent);
begin
   inherited create(AOwner);
   self.Height := SPECTRUM_HEIGHT;
   self.Width := SPECTRUM_WIDTH;
   // rempli la zone en noir.
   self.clearSpectre;
   positionZero:= ZERO_BAS;
   sensFluxSanguin := true;
 
   bmpTemp := TBitmap.Create;
   bmpTemp.Height := 200; // bitmap d'une colonne de spectre.
   bmpTemp.Width := 1;
 
   tabColorSpec := @NOIRBLANC;  
end;
 
 
 
qd j'essaye de placer mon composant sur une fiche, il me sort l'erreur suivante :
'Le control '' n'a pas de fenêtre parente'...
comme le seul contrôle du composant est le composant lui-même et que je lui fais bien inherited create(A0wner), je ne vois pas bien d'où ça peut venir !

mood
Publicité
Posté le 24-01-2002 à 14:38:08  profilanswer
 

n°92906
antp
Super Administrateur
Champion des excuses bidons
Posté le 24-01-2002 à 14:54:45  profilanswer
 

TSpectrumDisplayer = class(TPaintBox, ISpectrumDisplayer)
 
c'est quoi ? un héritage de deux trucs en même temps ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°92910
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 15:00:57  profilanswer
 

oui, c'est de l'héritage mutliple :) déguisé :
delphi n'accepte pas l'heritage multiple. Par contre, il accepte qu'une classe hérite d'une classe "concrète" et de plusieurs classes abstraites (interface en delphi).
c'est le cas ici : ISpectrumDisplayer est une interface.
 
(cf 4-19 du Guide du développeur BorlandDelphi 6.)
 
je ne pense pas que le pb vienne de là puisque tous mes composants qui marchent très bien héritent eux aussi d'une interface et d'une classe de delphi...
 
 
par exemple :
TBloodDirectionIndicator = class(TPanel, IBloodDirectionIndicator)
    private
         imageSonde: TImage;
         imageSens: TImage;
    public
       constructor create(AOwner: TComponent); override;
       procedure setDirection(sens: boolean);
   end;
 
avec
   IBloodDirectionIndicator = interface
    procedure setDirection(sens: boolean);
   end;

 

[edtdd]--Message édité par Moustaaki--[/edtdd]

n°92945
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 15:46:48  profilanswer
 

tu vois pas doù ça vient ?
t'as besoin d'autres infos ?

n°92946
antp
Super Administrateur
Champion des excuses bidons
Posté le 24-01-2002 à 15:49:44  profilanswer
 

bhen non je vois pas trop d'où ça vient...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°92955
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 15:58:13  profilanswer
 

antp a écrit a écrit :

bhen non je vois pas trop d'où ça vient...  




 
 :cry:  
'vois pas du tout non plus...  
parceque le control '', je ne sais pas trop lequel c'est ;)!
ça peut pas être le TBitmap ? ça a pas besoin d'avoir un parent, ce tru c?

n°92975
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 16:22:10  profilanswer
 

oui, en effet, j'ai pas encore essayer mais je pense que c'est ça parceque en debugant, on s'apperçoit que ça bloque sur
"self.Canvas.FillRect(Rect(0,0,512,200));" dans la procedure suivante : je vais la mettre dans loaded donc... pour voir.
 
procedure TSpectrumDisplayer.clearSpectre;
begin
 self.Canvas.Brush.Color := clBlack;
   self.Canvas.FillRect(Rect(0,0,512,200));
   spectrEnOrdre := false; // nouveau spectre, il n'est donc plus ordonné.
   specEntier := false; // nouveau spectre, donc pas entier.
end;

n°92984
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 16:29:51  profilanswer
 

heu.. j'ai plus d'erreur mais :
self.Canvas.Brush.Color := clBlack;  
self.Canvas.FillRect(Rect(0,0,512,200));  
 
fait queudale... même si je fais un repaint...
j'ai oublié de faire un truc, là ?
 
 
Edit =>
en fait, ça marche po dans le loaded mais si je fais un bouton qui lance la procedure lorsqu'on clique dessus, ça marche...
si je lance clearSpectre dans FormCreate de la fiche, ça fait queud.
comprend pas bien, là... vous avez une explication ?

 

[edtdd]--Message édité par Moustaaki--[/edtdd]

n°92991
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 16:34:42  profilanswer
 

j'viens de m'appercevoir en tapant le dernier message que lorsque je perd le focus sur la fenêtre et que je reviens dessus, la zone de dessin est redevenu transparente... je clique => ça devient noir... je perd le focus... ça redevient transparent... non mais c'est quoi ce bordel ?? il faut redessiner le canevas à chaque fois ??

n°93006
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 24-01-2002 à 16:47:20  profilanswer
 

Moustaaki a écrit a écrit :

j'viens de m'appercevoir en tapant le dernier message que lorsque je perd le focus sur la fenêtre et que je reviens dessus, la zone de dessin est redevenu transparente... je clique => ça devient noir... je perd le focus... ça redevient transparent... non mais c'est quoi ce bordel ?? il faut redessiner le canevas à chaque fois ??  




 
bon, en fait, c'est tout à fait normal... au temps pour moi les gars...  
il faut juste que je redessine, ce qui est normal...

mood
Publicité
Posté le 24-01-2002 à 16:47:20  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Delphi6] err à l'insertion d'un composants perso ds une fiche

 

Sujets relatifs
[Delphi] On peut pas acceder a une BDD avec la version perso ?uploader sur une page perso multimania.com sans passer par ftp ????
message d'erreur perso avec try catch throw en JavaScript!![Delphi 6] associer un icone à son composant perso.
[Delphi 6] creation de composants, pb avec 1 propriété.[ Delphi ] - Recherche de composants
[VB] Notification d'insertion auto.[Delphi 6] création de composants et propriétés objets...
[html] Formulaire insertion directe sur le site[algo] tri de composants sur une fiche Delphi
Plus de sujets relatifs à : [Delphi6] err à l'insertion d'un composants perso ds une fiche


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR