Java程序中如何在光标处插入一个字符串? 例如对于一个文本框TextField,并且设置了一个按钮“sin”,在点
展开全部
对于一个TextField 可以通过getCaretPosition()方法获取到当前光标的位置
然后调用getText()获取到TextField的字符串
再在对应光标位置插入需要插入的字符串 比如"sin"
最后把新字符串设置回去 并重置光标位置就可以了
定一个一个TextField 变量名是field
则代码如下:
int position = field.getCaretPosition();
String text = field.getText();
text = text.substring(0, position) + "sin"
+ text.substring(position, text.length());
field.setText(text);
field.setCaretPosition(position);
写成一个方法就是:
public void addString(TextField field, String addstr) {
int position = field.getCaretPosition();
String text = field.getText();
text = text.substring(0, position) + addstr
+ text.substring(position, text.length());
field.setText(text);
field.setCaretPosition(position);
}
然后调用getText()获取到TextField的字符串
再在对应光标位置插入需要插入的字符串 比如"sin"
最后把新字符串设置回去 并重置光标位置就可以了
定一个一个TextField 变量名是field
则代码如下:
int position = field.getCaretPosition();
String text = field.getText();
text = text.substring(0, position) + "sin"
+ text.substring(position, text.length());
field.setText(text);
field.setCaretPosition(position);
写成一个方法就是:
public void addString(TextField field, String addstr) {
int position = field.getCaretPosition();
String text = field.getText();
text = text.substring(0, position) + addstr
+ text.substring(position, text.length());
field.setText(text);
field.setCaretPosition(position);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询