Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-11-2010
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
teclado numerico virtual

Hola chicos:

Estoy realizando un formulario que simule una caja registradora necesito saber precisamente como podria hacer que un Button al apretarlo en una pantalla tactil o con el mouse tenga el mismo valor que el teclado numerico.


Saludos;
Responder Con Cita
  #2  
Antiguo 04-11-2010
Avatar de Ferrari
Ferrari Ferrari is offline
Miembro
 
Registrado: jun 2006
Ubicación: Torreón, México
Posts: 154
Poder: 18
Ferrari Va por buen camino
Lightbulb Version Delphi

Con que version de delphi estas trabajando...pork en delphi 2010 ya cuentas con un teclado virtual...salu2
Responder Con Cita
  #3  
Antiguo 04-11-2010
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 20
Enan0 Va por buen camino
No Seria tan complicado Lo que tenes que hacer.
Pones un TEXT.Box
en el evento OnKeyPress

Capturas ese valor y te fijas el Char que envia (podes convertirlo a EXA y tenes el Valor de la tecla).

Luego en cada Boton de tu teclado Virutal, asignas el valor que queres ante el evento on Click

saludos
Responder Con Cita
  #4  
Antiguo 04-11-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola novato_erik.

En realidad, el TButton no va poder tomar el valor de la tecla pulsada. Vas a tener que utilizar una variable
de tipo Word, que almacene el valor de la tecla que representa el TButton que ha sido pulsado.

Para asignar el valor te puede orientar la ayuda de Delphi. Busca : Virtual Key codes, son mnemónicos que
representan códigos generados por el teclado extendido. ( como es el caso de las teclas del del NumPad )
Normalmente se evalúan en el evento OnKeyDown, ya que este pasa por referencia la variable Key como una palabra.

Saludos.

Última edición por ecfisa fecha: 04-11-2010 a las 10:52:09.
Responder Con Cita
  #5  
Antiguo 05-11-2010
novato_erick novato_erick is offline
Miembro
 
Registrado: ago 2010
Ubicación: Panamá
Posts: 396
Poder: 14
novato_erick Va por buen camino
Teclado Virtual numerico

En el evento OnKeyDown es en el formulario en en el Button?

Cree ya la variable NumTeclado : Word; {Variable con el tipo word}

tambien le dije que esa variable almacenara el valor de VK_NUMPAD1 que pertenece al Virtual key Codes.

Lo e intentado en el Button con el evento OnKeyDown y nada...

Saludos;
Responder Con Cita
  #6  
Antiguo 05-11-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

No no, en el TButton, tendrías que hacer algo como:
Código Delphi [-]
procedure TForm1.btNumPad0Click(Sender: TObject);
begin
  NumTeclado:= VK_NUMPAD0;
end;

Con respecto a la captura de la tecla quizá te convenga poner a True la propiedad KeyPreview del Form y usar su evento OnKeyDown:
Código Delphi [-]
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  case Key of
   VK_NUMPAD0: NumTeclado:= VK_NUMPAD0;
   VK_NUMPAD1: NumTeclado:= VK_NUMPAD1;
   ...
   ...
  end;
end;

Saludos.
Responder Con Cita
  #7  
Antiguo 05-11-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Yo lo que haría es esto:

Pongo un Edit y diez botones en el formulario. A cada botón le asigno a su propiedad Tag, el numero que le corresponda (0 al botón 0,1 al botón 1, 2 al botón 2, etc.). Luego asigno a todos los botones un mismo evento OnClick así:

Código Delphi [-]
procedure TForm1.ButtonClick(Sender: TObject);
begin
  Edit1.Text := Edit1.Text + Chr(Ord('0') + (Sender as TControl).Tag);
end;

// Saludos
Responder Con Cita
Respuesta



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
Usas teclado numérico. emii89 Varios 5 12-07-2010 16:48:59
Teclado virtual toni.vi OOP 7 12-03-2009 21:16:41
Bloqueo de mayúsculas y del teclado numérico paldave Varios 2 05-09-2007 05:23:14
activar teclado numérico arrancar xp joanajj Varios 6 11-11-2005 13:13:15
Coma en teclado numérico javiermorales Varios 4 30-07-2003 13:13:41


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


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