Delphi 4 : création et installation de nouveaux composants graphiques - Programmation
Marsh Posté le 17-10-2001 à 11:44:28
je viens de voir que c'était ma méthode create qui merdait mais là encore, je ne comprend pas... 
 
voilà le code : la ligne 'TabRecentDirectories := TStringList.Create;' provoque une erreur fatale... 
je comprend pas bien parceque je fais la même chose dans une autre unité et j'ai pas ce problème.... 
 
(...) 
type 
   TExplorerListView = class(TCustomListView) 
   private 
      TabRecentDirectories: TStringList; 
(...) 
constructor TExplorerListView.Create(AOwner: TComponent); 
begin 
   inherited Create(AOwner); 
   IdXRecentDir := 0; 
   TabRecentDirectories := TStringList.Create; 
   TabRecentDirectories.Capacity := 35; 
   Self.ViewStyle := vsReport; 
   GetImagesSysHandle(); 
   Self.SmallImages := smallIcones; 
   Self.LargeImages := smallIcones; 
   SortColumn := TRI_NOM; 
   LastSortColumn := -1; 
 
end; 
Marsh Posté le 17-10-2001 à 11:46:48
en réalité, c'est la première ligne après le 'inherited create' qui provoque l'erreur, quel que soit l'instruction.
Marsh Posté le 17-10-2001 à 11:50:13
es tu certain ke ton aowner n'est pas a nil ?
Marsh Posté le 17-10-2001 à 11:57:12
en fait c'était smallIcones.... 
y manquait smallIcones := TImagesList.Create(Self); 
ça se voyait comme le nez au milieu de la figure ! 
à force de tout faire à notre place, Delphi nous pousse à l'erreur !   
 
je suis en train de voir si ça marche... 
Marsh Posté le 17-10-2001 à 11:21:48
j'ai fait un nouveau composant dérivant la classe TCustomTreeView.
je n'ai aucun pb pour le compiler et l'installer mais lorsque j'essaie d'ajouter ce composant sur une fiche, j'obtient le message suivant :
"Violation d'acces à l'adresse 03CC1D6A dans le module 'DCLUSR40.BPL'. Lecture de l'adresse FFFFFFFF."
je n'arrive pas à voir d'où ça vient !
est-ce qu'il ya une subtilité subtile ? (une fonction particulière à implémenter, par exemple ?)
[edtdd]--Message édité par Georges Moustaki--[/edtdd]