Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.ruby
[HowTo] immediate "sendkeys" with Ruby ? (SketchUp
Marcio Braga
12/22/2008 12:18:00 AM
I need to send a key (letter "x" for example) to SketchUp (shortcut) in
the middle of a code execution. I'm trying to use the command:
WIN32OLE.new("WScript.Shell").SendKeys("x")
But this way, the "x" is not being sent immediately. For example:
p "test1"
WIN32OLE.new("WScript.Shell").SendKeys("x")
p "test2"
I see "test1" and "test2" arriving (on SketchUp console) but I do not
see SketchUp responding to shortcut "x" during execution of the code.
"x" arrives only when the code finishes and return control to SketchUp.
Is any way to send this "x" ... immediately ?
Thank you
Marcio
--
Posted via
http://www.ruby-...
.
2 Answers
Dejan Dimic
12/22/2008 10:07:00 PM
0
On Dec 22, 1:18 am, Marcio Braga <mbraga0...@gmail.com> wrote:
> I need to send a key (letter "x" for example) to SketchUp (shortcut) in
> the middle of a code execution. I'm trying to use the command:
>
> WIN32OLE.new("WScript.Shell").SendKeys("x")
>
> But this way, the "x" is not being sent immediately. For example:
>
> p "test1"
> WIN32OLE.new("WScript.Shell").SendKeys("x")
> p "test2"
>
> I see "test1" and "test2" arriving (on SketchUp console) but I do not
> see SketchUp responding to shortcut "x" during execution of the code.
> "x" arrives only when the code finishes and return control to SketchUp.
>
> Is any way to send this "x" ... immediately ?
>
> Thank you
> Marcio
> --
> Posted via
http://www.ruby-...
.
Before sending any keys you should verify to whom you are sending
them.
Take look at:
http://rubyonwindows.blogspot.com/2007/05/automating-applications-with...
Regards,
Dima
Marcio Braga
12/23/2008 1:00:00 AM
0
Dejan Dimic wrote:
> Before sending any keys you should verify to whom you are sending
> them.
Return of AppActivate is true so I think I'm sending to the right place
(I can see SketchUp window going to focus), but the shortcut "Y" is not
triggered before the end of code execution.
s=WIN32OLE.new("WScript.Shell")
p s.AppActivate("SketchUp") # return is true ...
sleep(5)
p s.SendKeys("y") # should trigger Y shortcut
sleep(5)
# no signs of the shortcut ...
--
Posted via
http://www.ruby-...
.
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
[HowTo] immediate "sendkeys" with Ruby ? (SketchUp
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password