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

  FORUM HardWare.fr
  Programmation

  Delphi 4 : comprend pas !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Delphi 4 : comprend pas !

n°65744
Georges Mo​ustaki
Posté le 17-10-2001 à 12:35:24  profilanswer
 

constructor TExplorerTreeView.Create(AOwner: TComponent);
begin
   inherited Create(AOwner);
   ListIcones := TImageList.create(Self);
   self.getImageSysList();
 
   Self.Items.BeginUpdate;
   addDesktopRoot();
   addDriveRoot();
   addDrives();
   addNetworkRoot();
   addTrashRoot();
   Self.items.EndUpdate();
end;
 
 
 
bon, ça sa marche, le seul problème, c'est que quand j'ajoute ce composant dans une fiche, à l'execution, il me dit :'Classe TImageList introuvable' ou un truc dans le style alors que l'unité Controls est bien inclu dans le source de la fiche et celui du composant...
le pb disparait si j'ajoute une TimageList à la fiche mais je perd du coup mes icones...

 

[edtdd]--Message édité par Georges Moustaki--[/edtdd]

mood
Publicité
Posté le 17-10-2001 à 12:35:24  profilanswer
 

n°65745
evode
Meuaarf !! ReZo !!!
Posté le 17-10-2001 à 12:40:59  profilanswer
 

C koa ton getImageSysList ?
 
NB1 : pour les methodes sans paramatres, tu peux te passer des parenthese
NB2 : le self de self.membreQuelconque est facultatif

 

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


---------------
Hyndex - Meuaarf !! ReZo !!!
n°65779
Georges Mo​ustaki
Posté le 17-10-2001 à 14:10:06  profilanswer
 

Le self et les (), c'est juste pour la lisibilité du code... je m'y suis habitué avec Java
 
pour ce qui est de GetImageSysList, voilà le code :
 
procedure TExplorerTreeView.getImageSysList;
var
  sfi: TSHFileInfo;
  SysIL: UInt;
begin
   // retourne un handle sur la liste d'images système
   SysIL := SHGetFileInfo('', 0, sfi, SizeOf(TSHFileInfo),
      SHGFI_ICON or SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
  if SysIL <> 0 then
  begin
    ListIcones.Handle := SysIL;
    ListIcones.ShareImages := true;
  end;
end;
 
 
si je rajoute dans la méthode create
Self.Items := TTreeNodes.create(Self);
juste avant le Self.Items.BeginUpdate, l'erreur se retrouve sur Self.Items := (...);
mais c'est sur que c'est pas GetImageSysList : ça se voit bien quand j'execute en pas à pas...

 

[edtdd]--Message édité par Georges Moustaki--[/edtdd]

n°65806
evode
Meuaarf !! ReZo !!!
Posté le 17-10-2001 à 14:48:46  profilanswer
 

ton constructeur est t'il appele dans le constructeur du owner ?
 
je m'explike :
 
dans l'aide sur TWinControl, je suis tombe sur : n'utilisez pas la propriété Handle lors de la création ou du transfert sur flux d'un composant.
 
donc si tout ce lance avant la creation du composant principal (CP), on peu imaginer ke le handle necessaire a Items remonte jusqu'a CP mais ca marche po parce ke justement CP n'est po encore completement cree


---------------
Hyndex - Meuaarf !! ReZo !!!

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

  Delphi 4 : comprend pas !

 

Sujets relatifs
Delphi 4 : création et installation de nouveaux composants graphiques[Delphi 4] icones
[Delphi] Problème avec winsock (pour un chat)Copie de CD-Rom sur DD en Delphi ?
[Delphi->VB] instruction PChar[VB] ou [Delphi] Comment lire un fichier texte
delphi[Delphi 4] Envoyer E-Mail depuis un formulaire
Delphi 4 et win98 : compatibilité parfaite ?[Delphi 4] stream video
Plus de sujets relatifs à : Delphi 4 : comprend pas !


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