gpt4 book ai didi

java - 无法让 JTextField 在 keyPressed 上将文本设置为 null?

转载 作者:行者123 更新时间:2023-11-30 03:54:06 25 4
gpt4 key购买 nike

当我按下用户 ID 框中的某个键时,我希望在按下第一个键时删除教科书中的文本。

我认为下面的代码可以做到这一点,但它并没有删除文本字段中的文本。

如何将 JTextField 中的文本设置为空?

代码:

@Override
public void keyPressed(KeyEvent e) {
final Component source = e.getComponent();
final JFrame frame = (JFrame) SwingUtilities.getRoot(source);

if (source instanceof JTextField){
((JTextField) source).setText("");
source.repaint();
}
}

我应该提到我的 KeyListener 属于完全不同的类。

class myKeyListener implements KeyListener {

@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}

@Override
public void keyPressed(KeyEvent e) {
final Component source = e.getComponent();
final JFrame frame = (JFrame) SwingUtilities.getRoot(source);

JTextField tf = (JTextField)e.getSource();
tf.setText("");
}

@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
}

最佳答案

在 JTextField 中选择文本要容易得多,因此当用户键入字符时,文本就会消失。

    JTextField textField = new JTextField(10);
textField.setText("Type in something here");
textField.setSelectionStart(0);
textField.setSelectionEnd(textField.getText().length());

关于java - 无法让 JTextField 在 keyPressed 上将文本设置为 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23688177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com