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

 


Dernière réponse
Sujet : [Delphi]Writeln etc.. :(
antp ou alors en garde le même style de fonction que ce que tu avais fait :
 
Writeln(F, Form1.Edit1.Text);
 
(sans redéclarer Edit1 dans la fonction, puisque ça ne sert à rien)

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
antp ou alors en garde le même style de fonction que ce que tu avais fait :
 
Writeln(F, Form1.Edit1.Text);
 
(sans redéclarer Edit1 dans la fonction, puisque ça ne sert à rien)
JWhy euh... ca devrait planter encore une fois...
 
ta procedure TestEcriture n'est pas une methode de TForm1 et donc ne "connait" pas le Edit1 que tu as posé sur ta Form.
 
ta procedure TestEcriture utilise donc le Edit1 que tu as déclaré en variable globale et qui, encore une fois, n'a pas été créé .
 
Si tu veux utiliser le Edit1 de ta form et non celui que tu redeclare, il faut que TestEcriture soit une methode de Form1
 
[pascal]
  TForm1 = class(TForm)
    Button2: TButton;
    Edit1: TEdit;
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
    procedure TestEcriture(nomfichier:string);
  public
    { Public declarations }
  end;
 
procedure TForm1.TestEcriture(nomfichier:string);
[...]
[/pascal]
tssstare j'ai remodifié un peu:
cette fois le fichier text est vide et le texte "button2" n'apparaît plus...  
 
[pascal]
var
  Form1: TForm1;
  Edit1: TEdit;
  memo: string;
 
implementation
 
{$R *.dfm}
 
procedure TestEcriture(nomfichier:string);
var
  F: TextFile;
 
  begin
  memo := Edit1.text;
  AssignFile(F,nomfichier);
  Rewrite(F);
  Writeln(F,memo);
  CloseFile(F);
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
TestEcriture('c:\test.txt')
end;
 
end.
[/pascal]
JWhy a mon avis ca ecrit rien et ca te fais un gros plantage vu que tu declares une Edit1 en local , que tu ne le crees pas et que tu essayes apres de l'utiliser !
[pascal]procedure TestEcriture(nomfichier:string);  
var  
 [...]
 Edit1: TEdit;  
begin  
 [...]
 Writeln(F,Edit1.text);  
 [...]
end;[/pascal]
tssstare je veux écrire dans un fichier le contenue d'un Edit1 ,pour cela, je fais ça :
 
[pascal]
procedure TestEcriture(nomfichier:string);
var
  F: TextFile;
  Edit1: TEdit;
  begin
  AssignFile(F,nomfichier);
  Rewrite(F);
  Writeln(F,Edit1.text);  
  CloseFile(F);
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
TestEcriture('c:\test.txt')
end;
[/pascal]
 
Le programme se lance tranquillement, je clique sur "button2",j'ouvre mon fichier test.txt, et la je vois "button2" , au lieu de ce que j'ai écris dans l'édit1. :(

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)