Copier coller vers le curseur

Résolu
molotof_FC Messages postés 11 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 7 mai 2005 - 7 mai 2005 à 12:22
molotof_FC Messages postés 11 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 7 mai 2005 - 7 mai 2005 à 19:06
bonjour,

je debute le delphi, et je bute actuelement sur un petit probleme.

je souhaite faire un copier coller d'un edit vers un endroi non defini (la ou le curseur ce trouvera)

pour copier le texte de mon edit j'utilise:


Code:,
----

edit1.SelectAll;
Edit1.CutToClipboard;

ca marche, mais ensuite pour coller le texte nimporte ou, j'ai trouvé aucun moyen a part simuler l'appuie sur les touches control+v

ca marche,


Code:,
----

keybd_event(VK_CONTROL,0,1,0);

keybd_event(86,0,1,0);

mais malgré que a la suite il y et ca (qui est sensé simuler la "relache" de la touche)


Code:,
----

keybd_event(VK_CONTROL,0,2,0);

keybd_event(86,0,2,0);

et bien on dirait que la touche control ne se relache pas!!

le moyen et nul, si quelqun connait une autre methode, ca marangeré!

mais si il n'existe que ca, alors coment faire pour qu'il y et bien un relache des touches? (si je fait un bouton a par avec la commande relacher les touche ca marche)

enfin si vs avez quelque chose de plus simple...

merci d'avance

je sais vraiment pas quoi mettre comme titre pour mon probleme desolé,

4 réponses

ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
7 mai 2005 à 12:44
Pour "coller" :

KeyBD_event(vk_Control, $45, KeyEventf_ExtendedKey Or 0, 0);
KeyBD_event(86, $45, 0, 0);
KeyBD_event(86, $45, KeyEventf_KeyUp, 0);
KeyBD_event(vk_Control, $45, KeyEventf_ExtendedKey Or KeyEventf_KeyUp, 0);


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
3
molotof_FC Messages postés 11 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 7 mai 2005
7 mai 2005 à 14:15
merci c'est ca ca marche impec!!

encore deux petit truc et c'est fini:

comment faire pour qu'une appli soi toujour en premier plan?

et j'ai des pause dans mon programe, j'utilise sleep pour faire mes "timer" mais l'application et comme planté, il ny a pas quelque chose de moin brutal? (et de tres facile a manier)
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
7 mai 2005 à 14:26
Pour qu'une fenêtre soit au premier plan, tu dois mettre dans l'inspecteur de propriétés FormStyle à fsStayOnTop

pour les pauses, tu peux faire par exemple :

var
i: integer;

for i := 0 to 1000 do
begin
Sleep(1);
Application.ProcessMessages; // évite le blocage de l'application
end;

(ce n'est qu'un exemple, il y a sûrement mieux à faire )


@+
Bonne Prog'
Nico




<HR>
N'oubliez pas de cliquer sur
Réponse acceptée lorsque la réponse vous convient !
0
molotof_FC Messages postés 11 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 7 mai 2005
7 mai 2005 à 19:06
merci, mais par contre, pour le timer, ya pas moyen de faire un vrai timer qui atent??

parce que la ca ne peu pas rentré dans le code de mon appli (sinon ya des action qu'il va exécuter mille X)

c'est pas grave sinon, je reste avec mes sleep! (mais bon le pb et que comme il y a bcp de sleep a la suite, le texte qui devré saficher dand des label ne safich po :( )
0
Rejoignez-nous