c'est ça d'indenter le code sans ajouter de begin...end !!!
Je pense que tu voulais faire ça :
procedure TForm1.FormCreate(Sender: TObject);
var
Node: TTreeNode;
I: Integer;
Data: PMyData;
begin
Node := TreeView1.Items.GetFirstNode;
while Node <> nil do
begin
if Node.Level = 1 then
for I := 0 to 3 do
begin
New(Data);
Data^.Url := ListBox1.Items[I];
Node.Data := Data;
end;
Node := Node.GetNext;
end;
end;
Avec une bonne convention d'écriture, on évite des erreurs "à la con".
Ici, tu n'allais au node suivant que s'il sa propriété Level = 1.
Autrement, tu entrais dans une boucle infinie !
Logique que ton programme ne démarrait pas !
|