永发信息网

编写一个java程序,当按键盘的r、g、b键时,分别设置窗体背景色为红、绿、蓝三种色

答案:1  悬赏:30  手机版
解决时间 2021-04-03 17:52
编写一个java程序,当按键盘的r、g、b键时,分别设置窗体背景色为红、绿、蓝三种色
最佳答案

import java.awt.Color;
import java.awt.Container;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JDialog;

public class MyTest {
static JDialog dialog = new JDialog();
Container cp = new Container();

public static void main(String[] args) {
MyTest mytest = new MyTest();
dialog.setSize(300, 200);
dialog.setLocationRelativeTo(null);
dialog.setTitle("测试");
dialog.addKeyListener(mytest.new MyKeyListener());
dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
dialog.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dialog.dispose();
}
});
dialog.setVisible(true);
}

class MyKeyListener extends KeyAdapter {
public void keyPressed(KeyEvent e) {
char key = e.getKeyChar();
cp = dialog.getContentPane();
cp.setLayout(null);
switch (key) {
case 'r':
cp.setBackground(Color.red);
break;
case 'g':
cp.setBackground(Color.green);
break;
case 'b':
cp.setBackground(Color.blue);
break;
}
System.out.println("你按了【" + key + "】键");
}
}

}追问颜色没有变追答你在电脑上双击这个jar包,效果就是这样的。除非你有自己修改了代码,也有可能你键盘的模式为大写的,我代码没有判断大小写,你可以自己改。
追问可以改成swing的吗
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
儿子命中孤独寡是什么意思
DNA连接酶催化的反应是( ) A. DNA复制时母
我有一铜币只有图案不知道什么年代
MMDevApi.dll是什么?
K8401列车一节车厢多少个座位?列车长办公室
求辉星的好听的歌曲
我是初二的学生 留着长发 因为学校不想留刘海
顺风快递快吗?
冒险岛法师二转转职官在哪?
苍茫人生,疲惫人生,闭上心门,唯我独行
一方坚持要离婚,法院会强行判决吗
几种楼梯踏步板的安装方法
半红半紫紫色还差点到底算有吗
我叫双凤,带凤的什么好听网名好听?
我17岁 学的护士右手手臂上有一个18厘米的纹
推荐资讯
广州市白云区松柏东街松柏商业大厦最近的地铁
58同城二手房看到虚假信息怎样投诉
用过的一次性纸杯可以干嘛?
三国中不第秀才是什么意思
—AreyoustillthinkingabouttheemailTonysent
如果图中等值线为等温线,其中a=17℃、b=16
我愿化身石桥 受五百年风吹是什么歌曲里面的
新奇士公司的介绍
调节植物开花机制的关键因素是
新棉袄因放置不当,发霉发黄该怎么办
找女主角重生在1958年到1961年的小说
在工作上遇到麻烦向领导反映.却得不到回复怎
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?