[Scilab-users] Recognition of cursor key as input
Stéphane Mottelet
stephane.mottelet at utc.fr
Wed Aug 13 14:44:35 CEST 2014
Hello,
I presume you are not using scilab 5.5.0, change the function as follows :
function key=waitforkeypress()
global _keypress
set(gcf(),'event_handler','handler');
set(gcf(),'event_handler_enable','on')
_keypress=0;
while ~_keypress
sleep(1)
end
set(gcf(),'event_handler_enable','off')
key=_keypress;
endfunction
Le 13/08/2014 14:12, Jens a écrit :
> This is small example's output:
> !--error 77
> set: falsche Nummer von Eingangsargument(en): 2 nach 3 erwartet.
> at line 3 of function waitforkeypress called by :
> select waitforkeypress()
> at line 369 of exec file called by : [last line og script]
> exec('G:\Daten\ScilabFun\functionCheck.sce', -1)
>
> Jens
> -----------------------------------------------------------------------------------------------------------
>
>
> Am 13.08.2014 13:41, schrieb mottelet [via Scilab / Xcos - Mailing
> Lists Archives]:
>>
>> Would this small example fit your needs ?
>>
>> function handler(win,x,y,ibut)
>> global _keypress
>> if or(ibut==(37:40))
>> _keypress=ibut;
>> end
>> endfunction
>>
>> function key=waitforkeypress()
>> global _keypress
>> set(gcf(),'event_handler','handler','event_handler_enable','on')
>> _keypress=0;
>> while ~_keypress
>> sleep(1)
>> end
>> set(gcf(),'event_handler_enable','off')
>> key=_keypress;
>> endfunction
>>
>> while 1
>> select waitforkeypress()
>> case 37
>> disp('left')
>> case 38
>> disp('up')
>> case 39
>> disp('right')
>> case 40
>> disp('down')
>> break
>> end
>> end
>>
>> S.
>>
>> Jens <[hidden email]
>> </user/SendEmail.jtp?type=node&node=4031032&i=0>> a écrit :
>>
>>> Hello,
>>> My event_handler experiments with the Scilab help example in "Event
>>> handler functions" (see below) led to nothing. I can see the
>>> "event" at the bottom of the graphic window but I cannot arrest it
>>> in a variable. I tried this:
>>>
>>> function my_eventhandler(win,x,y,ibut)
>>> if ibut==-1000 then return,end
>>> [x,y]=xchange <xchange.html>(x,y,'i2f')
>>> xinfo <xinfo.html>(msprintf <msprintf.html>('Event code %d at mouse position is (%f,%f)',ibut,x,y))
>>> endfunction
>>>
>>> plot2d <plot2d.html>()
>>> fig = gcf <gcf.html>() ;
>>> fig.event_handler = 'my_eventhandler' ;
>>> fig.event_handler_enable = "on" ;
>>> //now:
>>> // - move the mouse over the graphic window
>>> // - press and release keys shifted or not with Ctrl pressed or not
>>> // - press button, wait a little release
>>> // - press and release button
>>> // - double-click button
>>>
>>> fig.event_handler_enable = "off" ; //suppress the event handler
>>> <a href="scilab://scilab.execexample/"> <a
>>> href="scilab://scilab.editexample/">
>>>
>>>
>>> I fear I must retire to
>>> m=evstr(x_dialog(...)
>>> Jens
>>>
>>>
>>>
>>> ----------------------------------------------------------------------------
>>>
>>> Am 13.08.2014 11:12, schrieb mottelet [via Scilab / Xcos - Mailing
>>> Lists Archives]:
>>>>
>>>> Hello,
>>>>
>>>> IMHO, the only way to trap a keypress and get the ascii (?) code is
>>>> to use the event_handler callback of a figure :
>>>>
>>>> function handler(x,y,ibut)
>>>> //
>>>> endfunction
>>>>
>>>> f=gcf();
>>>> f.event_handler='handler';
>>>> f.event_handle_enable='on';
>>>>
>>>> On my computer, I have the following mapping
>>>>
>>>> left arrow pressed : ibut=37 (released=-37)
>>>> up arrow : 38
>>>> right arrow 39
>>>> down arrow 40
>>>>
>>>> The problem is that you need to have a figure opened, and that this
>>>> figure must have the focus.
>>>>
>>>> S.
>>>>
>>>> Jens <[hidden email]
>>>> </user/SendEmail.jtp?type=node&node=4031030&i=0>> a écrit :
>>>>
>>>>> Hi Samuel,
>>>>> ASCII representation of up, down etc. would help me if I knew a Scilab
>>>>> command which puts the ascii value into a variable. input() is
>>>>> definitely
>>>>> unable to do so.
>>>>>
>>>>> Jens
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://mailinglists.scilab.org/Scilab-users-Recognition-of-cursor-key-as-input-tp4031013p4031026.html
>>>>> Sent from the Scilab users - Mailing Lists Archives mailing list
>>>>> archive at Nabble.com.
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> [hidden email] </user/SendEmail.jtp?type=node&node=4031030&i=1>.<a
>>>>> href="orghttp://lists.scilab.org/mailman/listinfo/users"
>>>>> target="_blank">orghttp://lists.scilab.org/mailman/listinfo/users
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> [hidden email] </user/SendEmail.jtp?type=node&node=4031030&i=2>
>>>> http://lists.scilab.org/mailman/listinfo/users
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>> If you reply to this email, your message will be added to the
>>>> discussion below:
>>>> http://mailinglists.scilab.org/Scilab-users-Recognition-of-cursor-key-as-input-tp4031013p4031030.html
>>>> To unsubscribe from [Scilab-users] Recognition of cursor key as
>>>> input, click here.
>>>> NAML
>>>> <http://mailinglists.scilab.org/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> View this message in context: Re: Recognition of cursor key as input
>>> <http://mailinglists.scilab.org/Scilab-users-Recognition-of-cursor-key-as-input-tp4031013p4031031.html>
>>> Sent from the Scilab users - Mailing Lists Archives mailing list
>>> archive
>>> <http://mailinglists.scilab.org/Scilab-users-Mailing-Lists-Archives-f2602246.html>
>>> at Nabble.com.
>>>
>>
>>
>>
>> _______________________________________________
>> users mailing list
>> [hidden email] </user/SendEmail.jtp?type=node&node=4031032&i=1>
>> http://lists.scilab.org/mailman/listinfo/users
>>
>>
>> ------------------------------------------------------------------------
>> If you reply to this email, your message will be added to the
>> discussion below:
>> http://mailinglists.scilab.org/Scilab-users-Recognition-of-cursor-key-as-input-tp4031013p4031032.html
>>
>> To unsubscribe from [Scilab-users] Recognition of cursor key as
>> input, click here.
>> NAML
>> <http://mailinglists.scilab.org/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>>
>
>
> ------------------------------------------------------------------------
> View this message in context: Re: Recognition of cursor key as input
> <http://mailinglists.scilab.org/Scilab-users-Recognition-of-cursor-key-as-input-tp4031013p4031033.html>
> Sent from the Scilab users - Mailing Lists Archives mailing list
> archive
> <http://mailinglists.scilab.org/Scilab-users-Mailing-Lists-Archives-f2602246.html>
> at Nabble.com.
>
>
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20140813/1dcd02da/attachment.htm>
More information about the users
mailing list