Catch Alt+Key combinations

Catch Alt+Key combinations

Postby dmajkic » Thu Aug 30, 2012 10:05 pm

I have a Window with ButtonBar and XBrowse. No menu.

How can I perform some operations on Alt+<Key> shortcuts?
I need to do both Alt+<letter> and Alt+<F_key>

Thank you.
dmajkic
 
Posts: 14
Joined: Fri Mar 02, 2012 11:08 am

Re: Catch Alt+Key combinations

Postby sambomb » Fri Aug 31, 2012 11:08 am

Use SetKey and inside de setkey function verify:

Code: Select all  Expand view

SetKey( VK_F2, {||Shortcut()} )

Procedure Shortcut()

   If GetKeyState(VK_SHIFT) // Shift
      ? "Shift+F2"
   end
   If GetKeyState(VK_CONTROL) // CTRL
      ? "Ctrl+F2"
   end
   If GetKeyState(VK_MENU) // Alt
      ? "Alt+F2"
   end

return

 
Email: SamirSSabreu@gmail.com
xHarbour 1.2.3 + Fwhh 20.2
User avatar
sambomb
 
Posts: 388
Joined: Mon Oct 13, 2008 11:26 am
Location: Itaocara - RJ - Brasil

Re: Catch Alt+Key combinations

Postby dmajkic » Fri Aug 31, 2012 7:57 pm

Code: Select all  Expand view
...
   If GetKeyState(VK_MENU) // Alt
      ? "Alt+F2"
   end
..
 


Doesn't work. It works fine for Ctrl+F2 and Shift+F2, but not for Alt.

Also I have some Alt+<Letter> shortcuts that should work on given window.
dmajkic
 
Posts: 14
Joined: Fri Mar 02, 2012 11:08 am

Re: Catch Alt+Key combinations

Postby Rick Lipkin » Sat Sep 01, 2012 1:25 pm

It does not appear that you can trap the <alt> key .. oDlg:bKeyDown seems to ignore returning a value for <alt> :( .. <ALT> key combinations are routed to Windows controls like <alt+f4> for a windows 'close'

I recommend changing your key routines to <shift>+key

Rick Lipkin
User avatar
Rick Lipkin
 
Posts: 2665
Joined: Fri Oct 07, 2005 1:50 pm
Location: Columbia, South Carolina USA


Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 101 guests