在Firemonkey 2(FMX2)中有界面
IFMXMouseService = interface(IInterface) [ '{2370205F-CF27-4DF6-9B1F-5EBC27271D5A}']
界面只有一个GetMousePos函数。 但是如何以跨平台方式设置鼠标位置? 任何人的想法?
我提出的最好的想法是做一个条件编译,直到FMX中存在可能性 - 但我不知道如何通过Delphi为MACOSX设置鼠标位置。 我会感谢任何帮助。
答案 0 :(得分:3)
以下是您需要的程序。您必须将macapi.coregraphics和macapi.cocoatypes添加到uses子句中。
procedure setmousepos(x,y:single);
var aNSPoint:NSPoint;
begin
aNSPoint.x:=x;
aNSPoint.y:=y;
CGWarpMouseCursorPosition(aNSPoint);
end;
你当然可以通过一个TPointF来代替X,Y但是你仍然需要分别设置NSPoint X和Y,因为NSPoint与TPointF不同。
此致
戴夫彼得斯 DP软件