Salut

Je vous previens tout de suite, je débute sous Delphi (v6) et j'ai un peu de mal.. Malgré mes recherches sur developpez je reste bloqué.
Bon , j'ai créer une classe toute bete :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
unit Client_annuaire;
(...)
type
   CClient = class
   private
      prenom: String;
      nom: String;
   public
        constructor Create(AOwner : TComponent; wprenom: String; wnom: String);
   end;
implementation
   constructor CClient.Create(AOwner : TComponent; wprenom: String; wnom: String);
   begin
       prenom := wprenom;
       nom := wnom;
   end;
 
end.
Que j'utilise dans mon prog principal (pour l'instant 2 champs texte et un bouton "enregistrer" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
procedure TForm2.img_bouton_saveClick(Sender: TObject);
var
     NouveauClient : CClient;
begin
     If txt_nom.Text <> '' then
          NouveauClient.Create(txt_prenom.Text, txt_nom.Text)
     else MessageBox(Form2.handle,'Veuillez renseigner le nom du nouveau
 client.','Erreur',MB_OK);
end;
Le probleme est que Delphi me sort une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Project1.exe raised exception class EaccessViolation with message 
'Access Violation at adress 4444c2etc  
in module Project1.exe. 
Write Of address 2312312. Process Stoped.
Où est le probleme? J'ai testé en virant le "AOwner : TComponent;" dans la description de la classe, c'est pareil. ya une histoire de "Self" a rajouté dans l'implementation?

Merci beaucoup pour votre aide, je continue a chercher de mon coté.
:hello:

[edit] J'ai modifié ton post pour rendre le code plus lisible. Les ascenceurs sont parfois génants [/edit]