我正在处理我的Java任务。我必须创建一个虚拟键盘,我的教授没有告诉我们关于KeyPressed的事情,我现在被困了几天。
我的问题是,如果我希望用户在JTextFiled中输入内容,并且想要在用户键入键盘上可用的任何字符时将JButton的背景更改为以不同颜色显示,我该怎么办?是什么?
例如,如果用户点击空格键,我希望框架上空格键的颜色显示为黑色,当用户释放按钮时,颜色会更改为原始背景颜色。
我知道如何创建JFrame,JButton,JLabel和JPanel。
这是我创建的一个简单代码。
import javax.swing.*;
import java.awt.*;
public class Assignment extends JFrame {
private JButton jbtnSpace = new JButton(" ");
private JPanel jpnl1 = new JPanel();
private JTextArea txta = new JTextArea(10,62);
public Assignment(){
jpnl1.add(txta);
jpnl1.add(jbtnSpace);
this.add(jpnl1);
}
public static void main(String[] args) {
Assignment jfrm = new Assignment();
jfrm.setTitle("Assignment");
jfrm.setSize(710,440);
jfrm.setVisible(true);
jfrm.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
请帮忙。谢谢
答案 0 :(得分:0)
试试这个:
private void jTextField1KeyTyped(java.awt.event.KeyEvent evt) {
int i=evt.getKeyChar();
if(i==KeyEvent.VK_SPACE) //or any Key Constant
{
//your code of changing the color
}
}
我希望这会有所帮助。您必须了解其中的工作情况,如其中一条评论中所述。