Création d'un procédure.

MagicManu Messages postés 19 Date d'inscription dimanche 22 octobre 2000 Statut Membre Dernière intervention 23 janvier 2008 - 9 nov. 2002 à 13:25
MagicManu Messages postés 19 Date d'inscription dimanche 22 octobre 2000 Statut Membre Dernière intervention 23 janvier 2008 - 13 nov. 2002 à 19:05
Salut @ tous,
je viens du VB et je débute en Delphi.
je voudrai savoir où on écrit une procédure publique.
Je l'ai créé aprés le mot "implémentation" mais j'ai une erreur sur le ListView nomé ListProg.Items.Count-1 alors que le même code sur un bouton fonctionne.

procedure EnregListe; // Enregistrement de la liste
Var F: TextFile;
Stg:String;
i: Integer;
begin
AssignFile(F,ExtractFilePath(Application.ExeName)+'Liste1.txt');
Rewrite(F); //Crée puis ouvre un nouveau fichier
for i:=0 to ListProg.Items.Count-1 do
begin
//Effacer le fichier et ecrire
Stg:=ListProg.Items[i].Caption; //Recupere dans la variable Stg le contenu de la liste
Writeln(F,Stg); //Writeln place une marque en fin de ligne
end;
CloseFile(F);
end;

Merci pour votre aide,
Manu.

3 réponses

Bruto Messages postés 214 Date d'inscription jeudi 21 mars 2002 Statut Membre Dernière intervention 14 mai 2004
9 nov. 2002 à 16:26
Sans doute ton problème est dû au fait qu'il ne reconnaît pas ton objet ListProg car mal référencé ( cette objet apprtient sans doute à ta fenêtre )

Pour résoudre cela, deux possibilités :
1 : Mieux référencer

for i:=0 to form1.ListProg.Items.Count-1 do

Où form1 est ta fenêtre qui contient ton objet ListProg.

2: Intégrer ta procédure à ta fenêtre
déclarer ta procédure dans la partie publique de ta fenêtre. Puis rajouter la classe :

procedure TForm1.EnregListe();
begin
...
end;

Avec ces deux méthodes, tu peux accéder à ton objet ListProg.

Il est important de pouvoir déterminer l'ensemble de ton programme comme un ensemble de classes ( revoir le C++ si problème ).

Bon courage pour ta migration, j'ai moi-même migrer de VB vers Delphi il y a trois mois. L'important est de bien cerner l'environement de Delphi, les classes, ... Les débuts sont difficiles mais il y a moyen puisque j'y suis arrivé.

Je pense que cela pourra t'aider.
Bonne prog.
;) Bruto --- Le p'tit belge --- pour vous servir
0
MagicManu Messages postés 19 Date d'inscription dimanche 22 octobre 2000 Statut Membre Dernière intervention 23 janvier 2008
9 nov. 2002 à 18:45
ça marche ! je n'avais pas mis les () et le nom de la form. Je vois que tu est vite passé à Delphi vu les sources sur ce site, j'espère que je n'aurai pas trop de mal. Merci beaucoup pour ton aide :) .

Manu.
0
MagicManu Messages postés 19 Date d'inscription dimanche 22 octobre 2000 Statut Membre Dernière intervention 23 janvier 2008
13 nov. 2002 à 19:05
Encore un petit problème pour l'utilisation de cette procédure, si je met "EnregListe()" sur un bouton ça fonctionne très bien par contre si je le met sur une autre fenêtre il me dit qu'il n'est pas déclaré.
Comment faire pour utiliser cette procédure dans tous mon projet ?
0
Rejoignez-nous