Ciao Tino,

Il lunedì 1 settembre 2008 17:15:29 Tino l' arrotino ha scritto:
> TextBox ---> 'tasto premuto'  assegno una macro che controlla che tasto
> è stato premuto, nel Controllo TextBox.
>
> Sub KeyPress(oEvent as Object)
>
>    Select Case oEvent.KeyCode
>      Case com.sun.star.awt.Key.A
>        Msg = "Ho premuto il tasto a/A"
>
>    End Select
>
> End Sub
>
>
> Adesso ho notizia che il Tasto a/A è stato premuto, adesso però vorrei
> riasegnare la pressione del tasto 'a' per un tasto nullo cioè come se il
> tasto non fosse stato premuto, girovagando per il web non ho trovato
> quello che cercavo, suggerimenti o link che mi possono illuminare ?

Quello che descrivi si potrebbe fare registrando un css.awt.KeyHandler anzichè 
un semplice KeyListener.

Purtroppo il KeyHandler è supportato a livello di documento ma non a lvello di 
singolo controllo TextBox

Usando il semplice keyListener (come stai già facendo) potresti comunque 
sostituire il carattere A appena inserito con una stringa vuota (o con 
qualsiasi altra stringa) , ma non è esattamente la stessa cosa che tu 
descrivi e cioè "come se il tasto non fosse stato premuto"

Combinando un KeyListener e un TextListener (oppure collegando manualmente gli 
eventi "tasto premuto" e "testo modificato") si può ottenere una soluzione un 
po sporchina ma a mio avviso sufficientemente funzionale.

Prova l'esempio qui sotto e fammi sapere.
(ah, ovviamente declino ogni responsabilità, blablà eccetera)

Ciao
Paolo M

--------------------------

REM  *****  BASIC  *****

Dim sOldText As String
Dim aOldSel As Object
Dim sNewText As String
Dim aNewSel As Object

Sub Main
oDlg = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
oDlg.execute
End Sub

Sub TextBox_TextModified(oEvent as Object)
sOldText = sNewText
aOldSel = aNewSel
sNewText = oEvent.Source.Text
aNewSel = oEvent.Source.getSelection()
End Sub

Sub TextBox_KeyPressed(oEvent as Object)
 Select Case oEvent.KeyCode
  Case com.sun.star.awt.Key.A
  oEvent.Source.Text = sOldText
  oEvent.Source.setSelection(aOldSel)
 End Select
End Sub




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Rispondere a