Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #5  
Antiguo 28-11-2007
federicorl federicorl is offline
Miembro
 
Registrado: may 2006
Posts: 31
Poder: 0
federicorl Va por buen camino
ya vamos avanzando, falta que sea latinoamericano

ya estoy logrando algo con el notepad, gracias a ustedes amigos foristas

Procedure TFrm_Teclado.SendKeys(Keys: String);
Var
manejador : THandle;
h: HWND;
Begin
h := FindWindow('Notepad', nil);
if h = 0 then ShowMessage('No se encontro la Aplicacion')
else
begin
SetForegroundWindow(h);
If Keys = 'Enter' then
PostKeyEx32(VK_RETURN, [], False)
Else If Keys = 'Mayus' then
PostKeyEx32(VK_CAPITAL, [], False)
Else If Keys = 'Tab' then
PostKeyEx32(VK_TAB, [], False)
Else If Keys = 'Back' then
PostKeyEx32(VK_BACK, [], False)
Else If Keys = 'Deci' then
PostKeyEx32(VK_DECIMAL, [], False)
Else If Keys = 'Guion' then
PostKeyEx32(VK_SUBTRACT, [], False)
Else If Keys = 'Ñ' then
PostKeyEx32(164, [], False)
Else
PostKeyEx32(Ord(elcorrecto(Keys)), [], False); // simulamos la presión de la tecla Enviada
End
end;

ya envia los teclazos pulsados al notepad pero con el problema de que no he podido enviar ni la eñe ni la coma en el codigo anterior intente hasta enviar el ascii pero no funciono

este codigo lo encontre en otros hilos del foro y es el que estoy usando:

procedure TFrm_Teclado.PostKeyEx32(key: Word; const shift: TShiftState; specialkey: Boolean);
{************************************************************
* Procedure PostKeyEx32
*
* Parameters:
* key : virtual keycode of the key to send. For printable
* keys this is simply the ANSI code (Ord(character)).
* shift : state of the modifier keys. This is a set, so you
* can set several of these keys (shift, control, alt,
* mouse buttons) in tandem. The TShiftState type is
* declared in the Classes Unit.
* specialkey: normally this should be False. Set it to True to
* specify a key on the numeric keypad, for example.
* Description:
* Uses keybd_event to manufacture a series of key events matching
* the passed parameters. The events go to the control with focus.
* Note that for characters key is always the upper-case version of
* the character. Sending without any modifier keys will result in
* a lower-case character, sending it with [ssShift] will result
* in an upper-case character!
*Created: 17.7.98 by P. Below
************************************************************}
Type
TShiftKeyInfo = Record
shift: Byte;
vkey : Byte;
End;
byteset = Set of 0..7;
Const
shiftkeys: Array [1..3] of TShiftKeyInfo =
((shift: Ord(ssCtrl); vkey: VK_CONTROL ),
(shift: Ord(ssShift); vkey: VK_SHIFT ),
(shift: Ord(ssAlt); vkey: VK_MENU ));
Var
flag: DWORD;
bShift: ByteSet absolute shift;
i: Integer;
Begin
For i := 1 To 3 Do Begin
If shiftkeys[i].shift In bShift Then
keybd_event( shiftkeys[i].vkey, MapVirtualKey(shiftkeys[i].vkey, 0), 0, 0);
End; { For }
If specialkey Then
flag := KEYEVENTF_EXTENDEDKEY
Else
flag := 0;
keybd_event( key, MapvirtualKey( key, 0 ), flag, 0 );
flag := flag or KEYEVENTF_KEYUP;
keybd_event( key, MapvirtualKey( key, 0 ), flag, 0 );
For i := 3 DownTo 1 Do Begin
If shiftkeys[i].shift In bShift Then
keybd_event( shiftkeys[i].vkey, MapVirtualKey(shiftkeys[i].vkey, 0), KEYEVENTF_KEYUP, 0);
End; { For }
End; { PostKeyEx32 }

alguna idea de como poder mandar la coma, la Ñ y demas caracteres de teclado latinoamericano?
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TouchScreen con delphi!! bernabe Varios 3 27-07-2007 18:24:03
Pantalla Touchscreen chavetaz Varios 2 15-05-2007 20:27:04
3D Desktop TouchScreen Onti La Taberna 2 06-04-2007 12:11:34
USB Teclado en Red Hat 9 nicocer Linux 0 05-07-2004 22:04:56
delphi y touchscreen cesarjbf Varios 3 30-03-2004 15:18:58


La franja horaria es GMT +2. Ahora son las 13:13:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi