How to show / hide CrossHair cursor in CorelDRAW X3, X5 by macro activated by hotkey F10 or by Command Button on custom form. This is a problem that has been bothering me for a long time. I present a solution based on SendKeys. I am asking the community fo

BG

Как да покажа / скрия CrossHair cursor в CorelDRAW X3, X5 чрез макрос, активиран с горещ главиш F10 или от Command Button на потребителска форма. Това е проблем, който ме занимава от дълго време.
Представям едно решение, в основата на което е SendKeys. Моля общността за по-добро решение на проблема чрез VBA, ако е възможно.

EN
How to show / hide CrossHair cursor in CorelDRAW X3, X5 by macro activated by hotkey F10 or by Command Button on custom form. This is a problem that has been bothering me for a long time.
I present a solution based on SendKeys. I am asking the community for a better solution to the problem via VBA if possible.

Private Sub CommandButton29_Click()
'show function CROSS_CURSOR_ON_OFF assigned to F10

With AppWindow
WIND_STATE = .WindowState
.Activate
.WindowState = WIND_STATE
End With

'CorelDRAW X3, X5
Set WshShell = CreateObject("WScript.Shell")
Set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "%{UP}%" 'MUST BE ACTIVE ROW TO WORK THE COMMAND ROWS BELOW
WshShell.SendKeys "{TAB 8}", True 'SHOW TOOLS MENU
WshShell.SendKeys "{DOWN}", True 'EXPAND TOOLS MENU
'WshShell.SendKeys "^n", True 'SHOW/HIDE OBJECT MANAGER
WshShell.SendKeys "{DOWN}" & Chr(32) & "{TAB}{UP}{RIGHT}{DOWN 10}{TAB}" & Chr(32) & "{ENTER}", True
End Sub

Three important recommendations for using SendKeys
AVOID send ALT{TAB} = %{TAB}
AVOID send {ENTER}
AVOID send any letter char if use multilyngual or not ENG PC system
or use with caution
WHEN USE SendKeys
SendKeys is not for dummies use

Greetings!