2013-08-21 81 views
1

我有一個用RealBasic創建的虛擬鍵盤。 當我按下字母,數字時,我將它附加到文本框中,但是,如何從虛擬鍵盤按下「刪除」按鈕時從當前光標位置刪除該文本字符中的字符?從字符串中刪除一個字符realbasic

要追加字母或數字,我使用文本框:

TextField1.Text = TextField1.text + me.Caption //to append caption 
TextField1.SelStart = Len(TextField1.text) // to move cursor at the end of string 

回答

0

就砍掉最後一個字符:

TextField1.Text = TextField1.Text.Left(TextField1.Len-1) 
2

保羅的解決方案作品,如果你只打算刪除最後一個輸入的字符。

但要小心:如果讓用戶也左右移動光標,當然你必須刪除光標位置的文本。如果你還允許用戶選擇文本,那麼它更加複雜。

我建議您的虛擬鍵盤只需將鍵入的鍵發送到系統,就好像用戶按下了鍵一樣。這樣,TextEdit字段將爲您做所有事情。

但是,爲了完成這項工作,您需要針對您希望支持的每個操作系統平臺的定製解決方案。

讓我知道你計劃支持哪些平臺,我會看看我能找到什麼。我有一些代碼用於OSX,但不適用於Windows。

2

做什麼托馬斯說手段:

dim n as String = TextField1.Text 
n = newText.left(TextField1.selStart) + n.right(n.len - textField1.selStart - 1) 
textField1.text = n