Есть код.
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls, ExtCtrls;
type
TForm3 = class(TForm)
Memo1: TMemo;
Edit1: TEdit;
Edit2: TEdit;
procedure Edit1Exit(Sender: TObject);
procedure Edit2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Edit2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.Edit1Exit(Sender: TObject);
begin
try
raise exception.create('1');
except
application.HandleException(self);
end;
end;
procedure TForm3.Edit2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
memo1.lines.add('down');
end;
procedure TForm3.Edit2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
memo1.lines.add('up');
end;
end.
Ситуация:
1. Фокус ввода находится на Edit1.
2. Я нажимаю и ОТПУСКАЮ мышь на Edit2.
В результате в memo1 оказывается строка down.
ВОПРОСЫ: 1. Почему не срабатывает событие Edit2MouseUp
2. Как сделать так, чтобы факт отпускания мыши стал известен Edit2.