begin
ax := $3;
Intr($33,Reg);
X := ex;
Y :° dx end else begin
X := -1;
Y := -1 end end; (MouseWhereXV) ;.- —————————— ————;
Procedure MouseGotoXY(X,Y: Integer);
{Переводит указатель иыши в новое положение: X,Y - виртуальные координаты} begin
if IsMouse then with Reg do
begin
ax := $4;
ex :» X;
dx := Y;
Intr($33,Reg) end end; {MouseGotoXY} ^———————————————^
Function MouseWhereX: Byte;
{Возвращает горизонтальную текстовую координату} begin
if IsMouse then with Reg do begin
ax := $3;
Intr($33,Reg) ;
MouseWhereX := MouseTextCooX(ex) end else
MouseWhereX := 0 end; {MouseWhereX) /___—————————————_
Function MouseWhereY: Byte;
{Возвращает текстовую координату по вертикали} begin
if IsMouse then with Reg do begin
ax :- $3;
Intr($33,Reg) ;
MouseWhereY :=- MouseTextCooY(dx) end else
MouseWhereY := 0 end; {MoueseWhereY} ^———————————————;
Function MouseIn(XI,Y1,X2,Y2: Integer): Boolean;
{Возвращает TRUE, если указатель находится в заданном прямоугольнике} begin
if IsMouse then with Reg do begin
ax :- $3;
Intr($33,Reg) ;
MouseIn := (cx>=Xl) and (cx<=X2) and (dx>-Yl) and (dx<=Y2)