java高亮显示JComboBox中的文本,然后在用户输入内容时将其删除
我正在尝试制作一个可以接受用户输入的“JComboBox”,但这不是问题所在。我希望如果“JComboBox”失去焦点,然后重新获得焦点,文本将突出显示。然后,如果用户输入任何内容,它会将文本删除并替换为新的输入
我读过this,但这不是我想做的。我只想突出文本,而不是整个内容
以下是我的猜测: *不是实际的代码,因为这是一个逻辑问题
第1步-我需要一个FocusListener或一个MouseStener
public class ComboEvent implements MouseListener {
@Override
public void onMouseClick(MouseEvent e) {
highLightText();
}
}
第二步-这是很粗糙的部分,我真的不知道怎么做
第3步-然后在键入内容时删除文本。再一次,我不太确定如何完美地实现这一点
public class EraserEvent implements KeyListener {
@Override
public void keyPressed(KeyEvent e) {
char t = (char) e.getSource();
//I know that there is know setText function in a JComboBox
comboBox.setText("t");
}
}
# 1 楼答案
您需要将逻辑添加到组合框的编辑器中,它恰好是一个文本字段
基本代码如下: