Bonsoir,
quand je compile mon code, j'obtiens l'erreur suivante : "Forme d'appel de méthode autorisée seulement pour les méthodes de classes"
à cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  gauche:= '0';
  droite:= '0';
  haut  := '0';
  bas   := '0';
  //différents actions sur gauche, droite, haut et bas ...
  [b]Client.envoyerTouches(haut,bas,gauche,droite);[/b]
end;
Cette fonction me sert à envoyer une chaîne à partir d'un client vers un serveur en utilisant Winsocks:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
procedure Client.envoyerTouches(haut,bas,gauche,droite:string);
		begin
			socket.sendStr('007 ' + haut + bas + gauche + droite +'#13#10');
		end;
et voici mes déclarations :
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Fleche_Haut: TImage;
    Fleche_Gauche: TImage;
    Fleche_Droite: TImage;
    Fleche_Bas: TImage;
    affichage: TLabel;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;
 
  Client = class
			constructor creer(
				nom:String;
				serveur:String;
				port:String);
      destructor detruire();
			private
				socket:TWSocket;
				port:String;
				procedure onDnsLookupDone(sender:TObject; error:Word);
				procedure onSessionConnected(sender:TObject; error:Word);
				procedure onSessionClosed(sender:TObject; error:Word);
			public
        connecte:Boolean;
        [b]procedure envoyerTouches(haut,bas,gauche,droite:string);[/b]
      end;
var
  Form1: TForm1;
  gauche:string;
  droite:string;
  haut  :string;
  bas   :string;
Ma procédure est bien définie partout pareil, et je doute qu'une procédure du même nom soit définie dans uses standarts de Delphi. Je ne comprend vraiment pas d'où vient le problème :/