Basic: Tastatureingabe abfangen

14/03/2009 - 21:19 von Ingmar Hellhoff | Report spam
Liebe News-Gemeinde,

ich habe da ein kleines Problemchen. Wie kann ich in einem Makro
abfragen, welche Taste gedrückt wurde und bei einer bestimmten Taste
eine Zeichenfolge an der Cursorposition einfügen?

Als Ansatz ist klar, daß ich dem Ereignis "Taste gedrückt" das
entsprechende Makro zuweisen muß. Dies soll dann erkennen, daß die Taste
" (also Shift + 2) gedrückt wurde, an der Cursorposition "`"' eifügen
und den Cursor vor dem zweiten " positionieren (also zwei Zeichen zurück).

Wie mache ich das?

Schon mal herzlichen Dank
Ingmar
 

Lesen sie die antworten

#1 Klaus Reiser
16/03/2009 - 11:28 | Warnen spam
Ingmar Hellhoff schrieb:
Liebe News-Gemeinde,

ich habe da ein kleines Problemchen. Wie kann ich in einem Makro
abfragen, welche Taste gedrückt wurde und bei einer bestimmten Taste
eine Zeichenfolge an der Cursorposition einfügen?

Als Ansatz ist klar, daß ich dem Ereignis "Taste gedrückt" das
entsprechende Makro zuweisen muß. Dies soll dann erkennen, daß die Taste
" (also Shift + 2) gedrückt wurde, an der Cursorposition "`"' eifügen
und den Cursor vor dem zweiten " positionieren (also zwei Zeichen zurück).


Teil 1 keine Ahnung. Teil zwei ist einfach.

Sub ZeichenEinfuegen
Dim myDoc as object
Dim myTextCursor as object
myDoc = thiscomponent
mytextCursor=mydoc.text.createtextcursor()
myViewCursor=myDoc.GetCurrentController.ViewCursor
mytextcursor.gotoRange(myViewCursor,false)
mytextcursor.string = chr(34)+chr(96)+chr(34)
rem mytextcursor.goleft(0,false)
mytextcursor.goright(1,false)
myViewCursor.gotoRange(mytextcursor,false)
End sub

Das Makro fügt die Zeichen ein und plaziert den Cursor nach dem 1.
eingefügten Zeichen. Man muss 1 Stelle nach rechts, und nicht 2 Zeichen
zurück, da der sichtbare Cursor "ViewCursor" und der Makro-Schreibcursor
"mytextcursor" zweierlei Dinge sind. Der sichtbare Cursor würde an der
Ursprungstelle bleiben und muss deshalb nach rechts bewegt werden.

Gruss
Klaus

Ähnliche fragen