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]
