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 30-05-2011
martinartaza martinartaza is offline
Miembro
NULL
 
Registrado: oct 2010
Posts: 77
Poder: 14
martinartaza Va por buen camino
corregido

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RxCalc, StdCtrls, Mask, ToolEdit, CurrEdit;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    RxCalculator1: TRxCalculator;
    procedure RxCalculator1CalcKey(Sender: TObject; var Key: Char);
    procedure FormCreate(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Edit1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
  public
    CANTENTER: INTEGER;
    valor: Currency;
    banvalor: boolean;
  end;

var
  Form1: TForm1;

implementation

uses ComObj;

{$R *.dfm}

procedure TForm1.RxCalculator1CalcKey(Sender: TObject; var Key: Char);
begin
if key = #61 then
   begin
   IF CANTENTER = 1 THEN
      BEGIN
         valor :=  RxCalculator1.CalcDisplay;
         keybd_event(vk_menu,0,0,0);
         keybd_event(VK_F4,0,0,0);
         CANTENTER:= 0;
      end
   else  inc(CANTENTER);
   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
//Inicializo la cantidad de enter a 0
CANTENTER:= 0;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
// detecto si se presiona un * (con eso abro la calculadora)
if key = #42 then
   begin
   banvalor:= True;
   RxCalculator1.Execute;
   // no uso if RxCalculator1.Execute (debido a que se la
   // cerrara con alt + F4
   banvalor:= False;
// con la siguiente linea levanto la tecla alt.
   keybd_event(vk_menu,0,keyeventf_keyup, 0);
   end;
end;

procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   // cuando se levanta la tecla, se borra el * y
   // se pone el valor y luego seteo la bandera.
if key = vk_menu then
   begin
   Edit1.Clear;
   Edit1.Text:= floattostr(valor);
   end;
end;

end.
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
Saltar de campo sin presionar Enter oscarac OOP 3 20-05-2011 15:44:30
Como activar el componente RxCalculator sysmar OOP 2 21-01-2009 07:56:10
Cambiar propiedad de componente del formulario padre al cerrar el formulario hijo jzginez OOP 5 22-06-2007 21:40:51
Evitar cerrar un formulario desde un componente genius Varios 1 23-11-2006 15:55:42
Cerrar componente con ventana modal elcigarra OOP 7 12-10-2005 13:17:53


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


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