Using Java Robot class in Parfeval

2 visualizzazioni (ultimi 30 giorni)
Rick Han
Rick Han il 21 Lug 2016
Commentato: Walter Roberson il 22 Lug 2016
Now I want to use Java Robot Class in a function. That function will be called by parfeval(), which will be evaluated in background.
  • It seems that Java robot class can not be used in parfeval().*
May I kindly know if there is a solution for this problem?

Risposta accettata

Edric Ellis
Edric Ellis il 22 Lug 2016
Modificato: Edric Ellis il 22 Lug 2016
If you're referring to java.awt.Robot, then this will not work since the MATLAB worker executing the body of the parfeval function is a separate process. You might be better off writing some Java code to spawn a thread to drive the java.awt.Robot.
  2 Commenti
Rick Han
Rick Han il 22 Lug 2016
Thanks a lot for answering!
And actually, the parfeval seems not to recognize this command "robot=Robot()" or "robot = java.awt.Robot;" . This is the step to construct a java Robot object.
So you mean I need to write some codes to construct this object bu myself?
Thanks a lot!
Walter Roberson
Walter Roberson il 22 Lug 2016
Possibly you need to import it, or make sure it is on the java class path?

Accedi per commentare.

Più risposte (1)

Walter Roberson
Walter Roberson il 22 Lug 2016
Each worker has its own process, and that process has no assigned graphics and no assigned keyboard or mouse. When you use the Java Robot class within that process, there is no keyboard or mouse to simulate presses of.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by