Bonjour, j'aimerai créer une class contenant un TEdit.
Voila comment j'ai fait:

Voici la declaration de la class contenant le TEdit:
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
19
20
 
type
 Tmyclass = class
  private
    t:TEdit;
  public
    constructor Create;
    destructor Destroy;
  published
    property text1:string read t.text write t.text;
  end;
 
constructor Tmyclass.Create;
begin
  t.Text:='new';
end;
 
destructor Tmyclass.Destroy;
begin
end;
Voici le bout de code dans lequel je teste ma class:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
 
procedure TForm1.Button2Click(Sender: TObject);
var
ex:Tmyclass;
begin
ex:= Tmyclass.Create;
button2.Caption:=ex.text1;
end;
Deux problemes se pose a moi:
1) D'apres mon exemple losque j'appuis sur le bouton2 on devrait voir marqué dessu 'new'. Or je me fais jeter a la compilation car le compiateur de delphi n'aime pas: ' property text1:string read t.text write t.text; '
Pk?

sinon j'ai reussi a compiler en retirant cette ligne et en mettant a la place le teste suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
procedure TForm1.Button2Click(Sender: TObject);
var
ex:Tmyclass;
begin
ex:= Tmyclass.Create;
button2.Caption:=ex.t.Text;
end;
Mais la il quand j'appui sur le bouton2 il me marque dedans du vide au lieu de me mettre 'new'. Si quelqu'un pouvait me dire ce qui cloche dans ce code?

2) Le deuxieme probleme qui se pose a moi est pourquoi le TEdit ne s'affiche pas dans le Form1?
Comment faire pour le voir s'afficher?