2012-12-20 88 views
1

如何通過按空格鍵從文本字符串中刪除字符。 這是我到目前爲止。它只會刪除最後一個字符。如何從文本字符串中刪除字符

if (keyPressed) { 
    if (key != '\n' && key != CODED) { 
     if (typing.length() < 5){ 
      typing = typing + key; 
     } 
    } 
    if (key == BACKSPACE) { 
     if (typing.length() > 0) { 
      typing = typing.substring(0, typing.length()-1); 
     } 
    } 
} 

text(typing, 345, 372); 
+0

字符串從哪裏來?你在使用GUI嗎? –

+2

把你的'key == BACKSPACE'放在if(keypressed)bolck –

+0

謝謝Bhavik Shah。我怎麼沒看見? – emre

回答

1

這是因爲BACKSPACEis not CODED,因此,儘管typing.length()小於5並且按BACKSPACE你符合這兩個條件打破東西。當它到達5只METS第二個條件:if (key == BACKSPACE)所以它的工作原理,把它回不到5,這樣就不會再工作......

作爲測試嘗試:if (key != '\n' && key != CODED && key != BACKSPACE) 但我想你可能需要一個switch (key)來完成這項工作。

而且您更好地使用void keyPressed()keyReleased()keyTyped() 代替keyPressed領域,平局()。或者你將需要自己處理關鍵的重複...

+0

。感謝您的解釋。 – emre