Bueno ya está andando pero me queda la aplicación, en realidad todo el windows como si estuviera con la tecla alt presionada, pero uno presiona la tecla alt (y la suelta y ya queda todo bien).
Le muestro el código de ejemplo.
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
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
CANTENTER:= 0;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key = #42 then
begin
banvalor:= True;
RxCalculator1.Execute;
end;
end;
procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
Edit1.Clear;
Edit1.Text:= floattostr(valor);
banvalor:= False;
end;
end.
Alguien me podría ayudar a desbloquear la tecla ALT.
Nota: este código no lo hubiera podido lograr sin la ayuda de ecfisa, muchas gracias.