Konu: eskiler
Tekil Mesaj gösterimi
Alt 27/05/07, 20:25   #5
salelltd
Albay
 
salelltd - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: May 2007
Bulunduğu yer: marsın en derin yeri
Yaş: 38
Mesajlar: 600
Tecrübe Puanı: 0 salelltd will become famous soon enough
Standart

bunu bi kitaptan almıştım okadar faydası oldu ki bunu kullanan programlar da ekliycem de onun için weriorum.
(mouse63.pas olarak kaydedilip derlenecek)

unit mouse63;
interface
uses dos;
const LEFTPRESS=1;
......RIGHTPRESS=2;
......LEFTREL=4;
......RIGHTREL=8;
......CURPOS=16;
var Mouse_Reg:Registers;
....Mouse_Installed:Boolean;
....Mouse_Error:Word;
function InitMouse:Word;
Procedure ShowMouse;
Procedure HideMouse;
Function MousePosition(var Mou***,MouseY:Word):Word;
procedure SetMousePosition(mou***,mousey:Word);
Function MousePress(button:word;var count,lastx,lasty:word):word;
Function MouseRelease(button:word;var count,lastx,lasty:Word):Word;
procedure Setmou***y(x1,y1,x2,y2:Word);
procedure RestoreMou***Y;
procedure SetPixelToMickey(Horiz,Verti:Word);
implementation
function InitMouse:Word;
begin
..Mouse_Reg.Ax:=0;Intr($33,Mouse_Reg);InitMouse:=M ouse_Reg.Ax;
end;
procedure showmouse;
begin
..Mouse_Reg.Ax:=1;Intr($33,Mouse_Reg);
end;
procedure HideMouse;
begin
..Mouse_Reg.Ax:=2;Intr($33,Mouse_Reg);
end;
function MousePosition(var mou***,mousey:word):word;
begin
..Mouse_Reg.Ax:=3;Intr($33,Mouse_Reg);
..with mouse_reg do begin mou***:=succ(cx div 8);mousey:=succ(dx div 8);mouseposition:=bx;end;
end;
procedure setmouseposition(mou***,mousey:word);
begin
..Mouse_Reg.Ax:=4;Mouse_Reg.cx:=pred(mou****8);mou se_reg.dx:=pred(mousey*8);Intr($33,Mouse_Reg);
end;
function mousepress(button:word;var count,lastx,lasty:word):word;
begin
..Mouse_Reg.Ax:=5;Mouse_Reg.bx:=button;Intr($33,Mo use_Reg);
..mousepress:=Mouse_Reg.ax;count:=mouse_reg.bx;las tx:=succ(mouse_reg.cx div 8);lasty:=succ(mouse_reg.dx div 8);
end;
function mouserelease(button:word;var count,lastx,lasty:word):word;
begin
..Mouse_Reg.Ax:=6;Mouse_Reg.bx:=button;Intr($33,Mo use_Reg);
..mouserelease:=Mouse_Reg.ax;count:=mouse_reg.bx;l astx:=succ(mouse_reg.cx div 8);lasty:=succ(mouse_reg.dx div 8);
end;
procedure setmou***y(x1,y1,x2,y2:word);
begin
..Mouse_Reg.ax:=7;Mouse_Reg.cx:=pred(x1*8);mouse_R eg.dx:=pred(y1*8);intr($33,mouse_reg);
..Mouse_Reg.ax:=8;mouse_Reg.cx:=pred(x2*8);mouse_R eg.dx:=pred(y2*8);intr($33,mouse_Reg);
end;
procedure restoremou***y;
begin
..Mouse_Reg.ax:=7;Mouse_Reg.cx:=0;mouse_Reg.dx:=63 9;intr($33,mouse_reg);
..Mouse_Reg.ax:=8;mouse_Reg.cx:=0;mouse_Reg.dx:=19 9;intr($33,mouse_Reg);
end;
procedure SetPixelToMickey(Horiz,Verti:Word);
begin
..Mouse_Reg.ax:=15;Mouse_Reg.cx:=Horiz;Mouse_Reg.D x:=Verti;intr($33,Mouse_Reg);
end;
begin
..Mouse_Error:=InitMouse;Mouse_Installed:=Mouse_Er ror=65535;
end.

Konu salelltd tarafından (27/05/07 Saat 20:46 ) değiştirilmiştir..
salelltd isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Konu Sayısı: 3