begin process at 2012 02 11 03:10:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Divers

 > 

Débutant(e)

 > 

simuler flèche bas


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

simuler flèche bas

lundi 23 octobre 2006 à 10:41:57 | simuler flèche bas

nitrique

Bonjour,

J'essaye de simuler flèche bas de plusieures manière mais je n'y arrive pas...

Selon ....KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);, le code ascii de la flèche bas est 40.
Mais pour moi, quand je fait ça:
chaine := 'TEST'+chr(40);

Que ce soit avec keybd_event(VkKeyScan(chaine[i]),0,0,0) ou ClipBoard.SetTextBuf(PAnsiChar(chaine));

Ca me retourne la parenthèse ouvrante '(' (ce qui me parait logique).

Comment faire pour que ça marche dans les 2 cas ?
lundi 23 octobre 2006 à 11:30:29 | Re : simuler flèche bas

nitrique

En clair, il faut faire ALT+quoi ?
lundi 23 octobre 2006 à 11:47:32 | Re : simuler flèche bas

nitrique

C'est à n'y rien comprendre... Je fait ça:
procedure TfrmMain.mmoInfosKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var str: String;
begin
  str := '';
  if ssShift in Shift then str := str+'La touche Maj est enfoncée. '
  else if ssAlt in Shift then str := str+'La touche Alt est enfoncée. '
  else if ssCtrl in Shift then str := str+'La touche Ctrl est enfoncée. ';
  ShowMessage(IntToStr(ord(Key))+' '+str);
end;

Quand j'appuie sur flèche bas, il me met juste 40 et lorsque je fait ALT+040 dans le bloc note, c'est ( qui apparait.

Je deviens fou !
lundi 23 octobre 2006 à 13:14:36 | Re : simuler flèche bas

cerber943

Salut,

N'as-tu pas essayé les constantes suivantes ?
VK_LEFT VK_RIGHT VK_UP  VK_DOWN

Elles ne fonctionne pas ?
lundi 23 octobre 2006 à 14:18:57 | Re : simuler flèche bas

nitrique

Bonjour cerber943,
Je ne veux pas mettre de code virtuel (incompatible avec le presse papier) mais le code ascii.

C'est quoi le contraire de VkKeyScan ?

Peut être que de cette manière, je trouverais un code clé.
Vu que VK_DOWN=40, et que j'aimerais passer dans la boucle de traitement VkKeyScan, il faudrait que je trouve le code ASCII qui faire à VkKeyScan retourner 40.
lundi 23 octobre 2006 à 14:58:42 | Re : simuler flèche bas

cerber943

Réponse acceptée !
Détail un peu ton pb stp, je ne comprends pas le rapport avec le presse papier ... ce ne sont que des constantes donc que tu les appelles par leur nom de constante ou par la valeur à laquelle elles sont affectées ne change rien.
Explique ton problème, ce que tu veux faire(il y a plus de chances qu'on puisse te répondre).

Bon voila en tout les cas un exemple qui fonctionne
Tu crées un timer, un tmemo
et tu lies les évenements qui vont bien

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Memo1: TMemo;
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var i : integer;
begin
memo1.Clear;
timer1.Interval:=500;
timer1.Enabled:=true;

for i:=0 to 50 do memo1.Lines.Add('test ligne '+inttostr(i));



end;
procedure TForm1.FormShow(Sender: TObject);
begin
memo1.setFocus();
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin

PostMessage(self.Memo1.Handle, WM_KEYDOWN,VK_UP, 0);
sleep(100);
PostMessage(self.Memo1.Handle, WM_KEYUP,VK_UP, 0);

end;

end.

Le code qui gère l'appuie sur la flèche du clavier (ici vk_up) est dans

TForm1.Timer1Timer(Sender: TObject);
Si ca ne te convient pas détail ta demande stp
a+


Cette discussion est classée dans : chaine, flèche, bas, simuler


Répondre à ce message

Sujets en rapport avec ce message

rendre une chaine de caractere en binaire [ par tarik ] comment rendre une chaine de caractere en binaire ?je vais l'utiliser pour realiser un programme de cryptage(hachage)etape1 : transformer en binaireet longueur d'une chaine de texte (Len en VB) [ par Saeko ] comment connaitre la longueur d'une chaîne de texte ? y a-t-il un équivalent Delphi à l'instruction 'Len' de VB ?Merci d'avanceSaeko Retourner une chaine... [ par ELECTRORESiSTiK ] Salut,J'ai une chaine "1234567890" je cherche une fonction qui me donnerai "0987654321". Comment puis-je faire ça ? Il existe une fonction ?Merci d'av Mettre une chaine minuscule en majuscule... [ par ELECTRORESiSTiK ] Salut, tout est dans le titre mais je me répête, comment puis-je faire pour mettre une string qui est en minuscule en majuscule, existe t il une fonct Transformation ???? [ par g0belin ] peut t'ont transformet une chaine PChar vers une chaine string????si oui comment???se serai bien que se soit du style "PCharToStr" Fonction pour séparer des champs dans une chaine [ par belkin ] Bonjour,Existe-t-il une fonction qui permet de séparer des champs dans une chaine ?Exemple : MaVariable := '123_456.dat';Je veux séparer le 123 et 456 String et Retour chariot [ par lomig ] J'ai une chaine de caractere constituée de deux mots que je veuxséparer par un retour chariot et ensuite insérer cette chaine dans unfichier texte. Si SQl en chaine ! [ par apz ] Salut a tous,qlq peut m'aider a ecrire ce code sql dans l'editeur de code delphi.Select *From Kiosque, Fact, NumeroWhere (Ref=:mref) and(kiosque. Tlistbox (scroll) [ par Lucas ] Bonjour, j'aimerais avoir la procedure qui me permet de me positionner en bas du composant listbox lorsque j'ajoute une ligne dedans...Je parle d'amen Enlever les accents d'un texte etc... [ par lomig ] Bonjour, je suis à la recherche d'un algo me permettant de transformerune chaine de caractere afin d'en enlever les eventuelles erreurs.Imaginons une


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,229 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales