是否可以从文本字段中选择某个字符?是否也可以转换他们的位置?
例如你好
是否可以用“e”切换“H”的位置?让它成为“eHllo”?
是否可以从文本字段中选择某个字符?是否也可以转换他们的位置?
例如你好
是否可以用“e”切换“H”的位置?让它成为“eHllo”?
我假设您在谈论JTextField?
您可以使用从 JTextComponent 继承的select(int selectionStart, int selectionEnd)方法以编程方式设置 JTextField 的选择。
至于切换前两个字符,只需使用getText()
andsetText(String newText)
方法(中间有一些字符串操作)。
如果要在文本字段中添加/删除字符,则应使用与文本字段相关的 Document 方法来执行此操作。您会发现以下方法:
Document document = textField.getDocument();
document.remove(...);
document.insertString(...);
Swing 控件的文本属性通常不允许直接与用于存储属性的底层对象进行交互。
这意味着您不会直接更改"Hello"
已显示在表格上的字符串,而只需将其替换为新字符串即可"eHllo"
。那么字符串是不可变的,所以这没什么大不了的。
getText()
您可以使用和分别访问或设置字符串setText(String newString)
。
(关于文本属性可见性的断言对于 Swing 的每个方面都可以认为是正确的,您通常按照 OOP 语言中的预期通过 getter 和 setter 进行交互)