program MouseInput;
Uses WinCrt,WinMouse, Graph;
Var
GraphicsDriver, GraphicsMode,
ErrCode : smallint;
x, y: shortstring;
Begin
x:=GetMouseX;
Y:=GetMouseY;
Writeln('Initialising Graphics, please wait...');
GraphicsDriver := Detect;
InitGraph(GraphicsDriver, GraphicsMode,'');
GetmouseX();
GetmouseY();
OuttextXY(0,0,x);
readln();
end.
它给我错误:
23/20 mouse.pas
错误:类型不兼容:预期为“WORD”“SHORTSTRING”
但是我不知道如何更改它,以使其在GetmouseX需要是Word的情况下起作用。
最佳答案
您的GetMouseX和GetMouseY函数不会返回结果,并且在调用它们的地方不会读取结果,我以为您会因为它们自己调用而出现堆栈溢出错误(或者这是编译器错误)。
刚刚看过paulsm的注释(我不记得Turbo Pascal函数),我认为您的代码应该像这样:
InitGraph(GraphicsDriver, GraphicsMode,'');
x := GetmouseX();
y := GetmouseY();
OuttextXY(0,0,x);
从Your link:
InitGraph(GraphicsDriver, GraphicsMode,'');
InitMouse;
x := GetmouseX;
y := GetmouseY;
关于graphics - Pascal得到了预期的短字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13444948/