我有一个应用程序,允许用户使用绘图功能写入区域,然后保存图像。有没有办法用UIAutomation模拟这个?
答案 0 :(得分:0)
尝试使用内置函数dragFromToForDuration(from,to,timeout)。获取对象属性行origin.x和origin.y以及size.width和size.height,您将能够设置绘图的坐标和坐标。你甚至可以尝试画一些很棒的东西:)
此代码将从绘图区域的左上角到右下角画一条线3秒钟(至少我希望它会)。您可以更改超时参数以更快或更慢地绘制。
var drawingAreaObject = ...mainWindow().<yourObject>;
var drawingAreaObjectRect = drawingAreaObject.rect();
var xBeginDrawPoint = drawingAreaObjectRect.origin.x + 1;
var yBeginDrawPoint = drawingAreaObjectRect.origin.y + 1;
var xEndDrawPoint = drawingAreaObjectRect.origin.x + drawingAreaObjectRect.size.width - 1;
var yEndDrawPoint = drawingAreaObjectRect.origin.y + drawingAreaObjectRect.size.height - 1;
UIATarget.localTarget().dragFromToForDuration({x:xBeginDrawPoint, y:yBeginDrawPoint}, {x:xEndDrawPoint, y:yEndDrawPoint}, 3);
你也可以尝试flickInsideWithOptions(我不确定这个但理论上是可行的)或tapWithOptions()来绘制一个点。 不幸的是,您只能使用此功能绘制线条。