2012-11-19 26 views
0
program MouseInput; 
Uses WinCrt,Mouse, sysutils,Graph; 
Var 
    GraphicsDriver, GraphicsMode, 
    ErrCode : smallint; 
    x, y: word; 

Begin 
x:=GetMouseX; 
Y:=GetMouseY; 

    Writeln('Initialising Graphics, please wait...'); 
    GraphicsDriver := Detect; 
InitGraph(GraphicsDriver, GraphicsMode,''); 
x := GetmouseX(); 
y := GetmouseY(); 
    OuttextXY(0,0,inttostr(x)); 
    readln(); 
end. 

我有此代码,但发生此语法错误: 1分之1mouse.pas 致命:语法错误,UNIT预期但PROGRAM发现 但是这是一个程序不是一个单位?UNIT预期但PROGRAM发现

如果我改变鼠标WinMouse它消失,而是抛出其他错误说标识符没有找到GETMOUSEX和GETMOUSEY

+1

编译器说你有一个以*程序*开头的单元'mouse.pas',但实际上它应该以* unit *开头。您发布的代码不是编译器指向的内容。 –

回答

1

如果您在文件夹单位/ RTL看,你会发现单元文件“mouse.o '和'mouse.ppu'。我认为文件名之间存在冲突,因为编译器期望另一个单元文件来更新这些文件名。通过将文件名更改为'mousetest.pas',编译器就可以做到一切正常。

+0

如果他使用普通的dos,那么确实也会有一些SFN冲突。 –

相关问题