DISKUSE
Sametime (8)
23.04.2021 09:41

Agent který je spuštený čtenářem by měl modifikova... (3)
16.04.2021 16:07

LCConnection - Oracle (2)
08.04.2021 11:16

RTF Scrollbar (2)
21.01.2021 23:27

Export textu do hlavičky MS Word dokumentu pomocí ... (2)
21.01.2021 18:48

Nemá created (2)
09.01.2021 08:46

Problém s polem From v mailech posílaných přes SMT... (1)
30.11.2020 14:30

Agent log (1)
04.08.2020 13:17


Š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)