如何通过JSL模拟鼠标操作?比如我想通过JSL模拟鼠标操作:
1、模拟移动光标:将光标移动到指定位置:例如x=180;Y=380;
2. 左键单击:左键单击并单击“开始”按钮。
谢谢!

自动化和脚本编写Re: 如何通过JSL模拟鼠标操作?谢谢克雷格!正如您所说,“在分割完成之前阻止主线程上的任何其他活动”。
我使用VBA来控制Q语言和JMP之间的协作。
现在只需使用 JMP 即可轻松完成。
谢谢!Re: 如何通过JSL模拟鼠标操作?我认为 JMP 在主线程上运行 GO 按钮,从而阻止主线程上的任何其他活动,直到分割完成。你能分享一个例子吗?
Re: 如何通过JSL模拟鼠标操作?谢谢杰夫!
我的目标是等到决策树操作完成后再运行以下脚本。
JMP 是否有相应的功能?

Re: 如何通过JSL模拟鼠标操作?我不知道如何获取CPU使用率。 据我所知,JMP 没有任何工具可以直接执行此操作。
但是,您不需要模拟单击 Go 按钮,因为 JSL 已经有针对 Partition 平台的 Go 消息。

Re: 如何通过JSL模拟鼠标操作?Re: 如何通过JSL模拟鼠标操作?具体来说,一个路径的所有JMP文件都会被划分为决策树,每个文件决策树的运行时间是不同的。假设时间在30到60分钟之间。
因此,JSL应该设计为点击“Go”按钮30分钟,每5分钟测试一次CPU利用率。
如果CPU利用率低于5%,则执行d0<否则,循环应持续5分钟,然后测试CPU利用率,直到决策树分割完成。
d0 = Current Data Table();
dir = "c:\1\";
Fs = Files In Directory( dir );
For( d = 1, d <= N Items( fs ), d++,
dt = Open( dir || fs[d] );
p = dt << Partition(
Y( :Y ),
X( :X1, :X2 ),
Validation Portion( 0.25 ),
Informative Missing( 1 )
);
(Report( p ) << xpath( "//ButtonBox[@title = 'Go']" )) << click;
For( j = 1, j <= 6, j++,
cpu = ……;
If( cpu < 0.05,
d0 << Run Script( "B" ),
Wait( 300 )//Does this wait affect the decision tree?
);
);
);

Re: 如何通过JSL模拟鼠标操作?继续问更多不寻常的问题:我现在正在使用Excel的VBA通过JMP通过监控CPU利用率和控制鼠标移动和点击来实现不同文件的各种循环操作。 我的主要目标是通过点击“go”按钮来获得决策树的 Split 效果,而不是通过 JSL 的“Split Best(1000)”。 我现在想在不使用 VBA 的情况下执行此操作,而是使用 JSL。 现在我需要实现 JSL 来获取 CPU 使用率。Re: 如何通过JSL模拟鼠标操作?谢谢克雷格!
原来的 JMP 可以通过这种方式实现。 我学到了新技能。Re: 如何通过JSL模拟鼠标操作?您可以像这样单击按钮:
dt=open("$sample_data/big class.jmp");
p = dt<<PARTITION></PARTITION>为什么要移动鼠标光标? 除了您可能想要单击的按钮之外,还有一些东西,但可能有比编写移动鼠标的代码更好的自动化方法。 此外,人们讨厌鼠标自行移动。
Re: 如何通过JSL模拟鼠标操作?编程语言
Public Declare PtrSafe Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long<BR />Public Declare PtrSafe Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long<BR />Public Const MouseEventf_LeftDown = &H2
Public Const MouseEventf_LeftUp = &H4
Type POINTAPI
x As Long
y As Long
End Type
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub click()
SetCursorPos 180, 380
For i = 1 To 1
mouse_event MouseEventf_LeftDown, 0, 0, 0, 0
mouse_event MouseEventf_LeftUp, 0, 0, 0, 0
Next
End Sub