18.11.2023 06:42

RTF - Computed (2)
19.10.2023 13:00

Čtení polí v neuloženém dokumentu
08.10.2023 17:15

Default object RT pole
05.10.2023 18:46

Komprese příloh (2)
14.09.2023 10:31

Chyba aplikace Notes: Soubor neexistuje. (profile)
10.05.2023 07:53

Co se děje ? Jak se pracuje v jazyce vzorců ? (2)
21.04.2023 14:15

Co se starou dokumentací k R3, R4, ...?
05.04.2023 14:41

Ak ste niekedy potrebovali v prostredí Notes klienta simulovať prácu s klávesnicou, tak viete, že to nieje jednoduché. Možno cestou je použitie WIN 32 API a jeho metódy "keybd_event".
Ako z vyššie uvedeného vyplýva, tento návod je aplikovateľný vtedy, ak sú splnené dva predpoklady:
1. Klient Lotus Notes pracuje vo Win32 prostredí
2. Sekvenciu je možné naprogramovať v LotusScripte
Najskôr si povedzte, akú sekvenciu chcete simulovať. Zvyčajne ide o jednu z týchto situácií:
1. V sekvencii potrebujete odtieniť používateľa od interaktívneho okna (napríklad dialógové okná s kontrolnou otázkou).
2. V sekvencii sa sprístupňuje menu príkaz, ktorý nie je jednoducho dostupný a nemá alternatívu v command príkazoch.
3. V LotusScript sekvencii potrebujete zaradiť príkaz, ktorý nemá v LS alternatívu.
Práve posledný typ je riešený v nasledujúcom príklade:
Stojíte pred otázkou, ako vynútiť v LS sekvencii znovu-prihlásenie používateľa. Potrebovali by ste jednoducho simulovať v LS postupnosť príkazov File-Tools-LockID, alebo inak: Alt - F - T - L. (Viem, je to možné aj cez F5, no tento alternatívny prístup som zvolil kvôli ilustratívnosti).
Riešenie je nasledovné:
1. V príslušnom objekte zadeklarujte funkciu keybd_event:
Declare Sub keybd_event Lib "user32.dll" (Byval bVk As Integer, Byval bScan As Integer, Byval dwFlags As Integer,Byval dwExtraInfo As Integer)
2. V samotnej LS sekvencii vložte riadky, ktoré simulujú stláčenie kláves:
keybd_event &h12,0,0,0 ' stlačené <Alt>
keybd_event &h46,0,0,0 ' stlačené <F>
keybd_event &h46,0,2,0 ' uvoľnené <F>
keybd_event &h54,0,0,0 ' stlačené <T>
keybd_event &h54,0,2,0 ' uvoľnené <T>
keybd_event &h4C,0,0,0 ' stlačené <L>
keybd_event &h4C,0,2,0 ' uvoľnené <L>
keybd_event &h12,0,2,0 ' uvoľnené<Alt>
Hotovo. A v prípade, že začnete využívať tento prístup systémovo, rozhodne odporúčam zapuzdriť kódy kláves do konštánt (napr. VK_F=&h46) a začať objektovo programovať. Tvorba i údržba sekvencií sa výrazne zjednoduší.
Autor: Miroslav Uhlár
Datum: 09.05.2003
Sdílet článek Seznam komentářů
Související články: