DISKUSE
šablona pro TeamRoom 
31.08.2022 13:43

Hlášení o uložení změn (4)
12.08.2022 13:23

IE vs Edge (2)
09.08.2022 08:43

telefonní seznam / adresář 
05.08.2022 09:25

Chybějící properties NotesViewColumn  (2)
29.06.2022 08:33

@SetTargetFrame (1)
24.05.2022 21:06

Hodně sloupců (8)
24.05.2022 12:18

Jazyk vzorců: Zapisování do jiné aplikace LN (2)
24.05.2022 12:10


ŠKOLENÍ


REKLAMA


KOMENTÁŘE

Simulovanie práce s klávesnicou v Notes klientovi

Vytisknout článek

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ářů
 
Od
Téma
 Datum
bubux
super... prave sa mi to hodi... :)
24.09.2003 14:12

Související články:
» 

Mini-konzola k Domino serveru

 (Notes/Domino R5, 22.11.2002)