SoloCodigo
Programación General => Pascal => Mensaje iniciado por: Cybercoca en Miércoles 14 de Mayo de 2003, 23:59
-
Compañeros necesito su ayuda, tengo un programa que es un proyecto para la universidad, pero algun dia de estos vi un programa hecho en TP en el cual utilizaban el mouse, si alguien sabe donde encontrar un ejemplo de como hacerlo se lo agradeceria mucho ...
-
Aca te dejo una libreria muy sencilla , cortita que utiliza Uses CRT,DOS del Turbo
-
{UNIDAD QUE HABILITA LAS RUTINAS DE MANEJO BASICO DEL MOUSE
Esta unidad una vez compilada puede ser invocada desde cualquier programa
DESCRIPCION
Se implementan 4 procedimientos a saber :
Procedure InitMouse : Inicia el modo de manejo del mouse.
Procedure ShowCursorMouse : Muestra el puntero del mouse.
Procedure HideCursorMouse : Oculta el puntero del mouse.
Procedure GetStatus_Position(Var Status, Xpos, Ypos : Word);
Devuelve la posici¢n y el estado del mouse.
PASOS PARA COMPILAR ESTA UNIDAD
1) Activa el menu con el uso de la tecla [F10]
2) Escoge la opci¢n Compile y presiona [ENTER]
3) Selecciona la opci¢n Destination y si esta en Memory presiona [ENTER]
para que cambie a Disk, en caso de que se encuentre en Disk, dejala
como esta.
4) Presiona [F9] para compilar.
}
Unit Mouse;
Interface
Var
Mouse_Enable,
MousePtr_Active : Boolean;
Buttons : Byte;
Procedure InitMouse;
Procedure ShowCursorMouse;
Procedure HideCursorMouse;
Procedure GetStatus_Position(Var Status, Xpos, Ypos : Word);
Implementation
Uses DOS;
Const
MouseInt = 51;
Var
regs : Registers;
Procedure InitMouse;
begin
Regs.AX := 0;
Intr(MouseInt, regs);
if Regs.AX <> 0
then
begin
Mouse_Enable := TRUE;
Buttons := Regs.BX
end
else Mouse_Enable := FALSE;
end;
Procedure ShowCursorMouse;
begin
Regs.AX := 1;
Intr(MouseInt, regs);
MousePtr_Active := TRUE
end;
Procedure HideCursorMouse;
begin
Regs.AX := 2;
Intr(MouseInt, regs);
MousePtr_Active := FALSE
end;
Procedure GetStatus_Position(Var Status, Xpos, Ypos : Word);
begin
Regs.AX := 3;
Intr(MouseInt, regs);
With Regs do
begin
Status := BX;
Xpos := CX;
Ypos := DX;
end
end;