这个是看别人改的代码。但是有错误,,,找不到方法来改正错误。。。。今天编了一天的代码,脑细胞都要死完了。真心觉得计算机的工作不好做的啊,好好加油啊。。我的代码啊,不懂了!下面的有错误啊。
2013-12-28 18:06
836 查看
public void JPopMenuDemo(){
JRadioButtonMenuItem items[]; //菜单项
Color[] colors={Color.blue,Color.pink,Color.yellow,Color.red,Color.orange,Color.black,Color.green,Color.gray}; //颜色数组
final JPopupMenu pm; //弹出菜单
ChangeColorAction action = new ChangeColorAction(); //菜单项事件处理
String[] str = {"Blue","Pink","Yellow","Red","Orange","green","black","gray"}; //菜单项名称
ButtonGroup colorGroup=new ButtonGroup(); //实例化按钮组
pm=new JPopupMenu(); //实例化弹出菜单
items=new JRadioButtonMenuItem[8]; //初始化数组
for (int i=0;i<items.length;i++) {
items[i]=new JRadioButtonMenuItem(str[i]); //实例化菜单项
pm.add(items[i]); //增加菜单项到菜单上
colorGroup.add(items[i]); //增加菜单项到按钮组
items[i].addActionListener(action); //菜单项事件处理
}
addMouseListener(new MouseAdapter(){ //窗口的鼠标事件处理
public void mousePressed( MouseEvent event ) { //点击鼠标
triggerEvent(event); //调用triggerEvent方法处理事件
}
public void mouseReleased( MouseEvent event ) { //释放鼠标
triggerEvent(event);
}
private void triggerEvent(MouseEvent event) { //处理事件
if (event.isPopupTrigger()) //如果是弹出菜单事件(根据平台不同可能不同)
pm.show(event.getComponent(),event.getX(),event.getY()); //显示菜单
}
});
getContentPane().setBackground(Color.white); //窗口的默认背景色为白色
setSize(230,160); //设置窗口大小
setVisible(true); //设置窗口为可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE ); //关闭窗口时退出程序
}
class ChangeColorAction implements ActionListener { //菜单项事件处理
public void actionPerformed(ActionEvent event) {
for (int i=0;i<items.length;i++)
if (event.getSource()==items[i]) { //判断事件来自于哪个菜单项
Color[] colors;
getContentPane().setBackground(colors[i]); //设置窗口背景
repaint(); //重绘窗口
return;
}
}
}
}
}
JRadioButtonMenuItem items[]; //菜单项
Color[] colors={Color.blue,Color.pink,Color.yellow,Color.red,Color.orange,Color.black,Color.green,Color.gray}; //颜色数组
final JPopupMenu pm; //弹出菜单
ChangeColorAction action = new ChangeColorAction(); //菜单项事件处理
String[] str = {"Blue","Pink","Yellow","Red","Orange","green","black","gray"}; //菜单项名称
ButtonGroup colorGroup=new ButtonGroup(); //实例化按钮组
pm=new JPopupMenu(); //实例化弹出菜单
items=new JRadioButtonMenuItem[8]; //初始化数组
for (int i=0;i<items.length;i++) {
items[i]=new JRadioButtonMenuItem(str[i]); //实例化菜单项
pm.add(items[i]); //增加菜单项到菜单上
colorGroup.add(items[i]); //增加菜单项到按钮组
items[i].addActionListener(action); //菜单项事件处理
}
addMouseListener(new MouseAdapter(){ //窗口的鼠标事件处理
public void mousePressed( MouseEvent event ) { //点击鼠标
triggerEvent(event); //调用triggerEvent方法处理事件
}
public void mouseReleased( MouseEvent event ) { //释放鼠标
triggerEvent(event);
}
private void triggerEvent(MouseEvent event) { //处理事件
if (event.isPopupTrigger()) //如果是弹出菜单事件(根据平台不同可能不同)
pm.show(event.getComponent(),event.getX(),event.getY()); //显示菜单
}
});
getContentPane().setBackground(Color.white); //窗口的默认背景色为白色
setSize(230,160); //设置窗口大小
setVisible(true); //设置窗口为可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE ); //关闭窗口时退出程序
}
class ChangeColorAction implements ActionListener { //菜单项事件处理
public void actionPerformed(ActionEvent event) {
for (int i=0;i<items.length;i++)
if (event.getSource()==items[i]) { //判断事件来自于哪个菜单项
Color[] colors;
getContentPane().setBackground(colors[i]); //设置窗口背景
repaint(); //重绘窗口
return;
}
}
}
}
}
相关文章推荐
- 参考了别人的暴力代码 自己的错误在与 思路并不复杂 但是自己的map并没有请空 这个错误 要改
- wap获取手机号码,今天uc开启云加速,用公司的工具类获取是null,但是另外一个项目可以,应该这个项目的工具旧少了一些代码。。,网上找了 方法自己加可以
- android 代码混淆后出现:TypeReference constructed without actual type information这个错误的解决方法
- 今天和别人讨论发现以前运行estuary例子方法是错误的
- Windows不能在本地计算机启动OracleDBConsoleorcl.错误代码2的解决方法
- 在我工作中,我想让RelativeLayout设置按钮的效果,但是有时候没有效果,下面的方法可以解决问题
- 曲线解决CMFCPropertyGridCtrl掩码的bug2009年12月30日 星期三 下午 01:24CMFCPropertyGridCtrl这个控件当用到掩码时,会有问题.解决办法用其他掩码替代.下面是一个IP掩码处理方法.代码如下
- xp系统打开计算机管理弹出"Computer已停止工作"的错误提示的解决方法
- Maven奇怪的问题,当找不到Maven输出的提示错误时可以试下这个方法
- android studio 更新 Gradle错误解决方法(按键灰色,rebuild和clean都没有问题,被这个问题困扰了一天)
- 请大家看一下一个c语言中的链表问题,下面的代码是有错误的!!请大家说出错误的原因,以及修改的方法!!!
- "当前方法的代码已经过优化,无法计算表达式的值"的这个错误的解决方案!!!
- jsp中上传大文件(200M已测试),存到数据库,易发生连接超时的ie找不到网页的错误,其解决方法。略写代码,参考(.net修改代码应该可以,改天修改)
- android ListView下拉刷新(代码是别人的,但是本人写了很多注释,并准备好好分析下原因)
- 在计算机中找不到mysql服务,解决方法是这个
- 搞了一天终于实现了 DataGrid 中的多国语言的问题,采用了中文向其他语言自动翻译的方法,其实不难,主要是想法(本文不涉及这个计算机技术问题,仅以此作为标题)
- 曾经觉得当IT代码工人觉得很没前途,但是到了求别人的时候真的感觉到当个代码工人还是蛮有前途的
- 一天安装一个mysql,不是吓唬你,哈哈,mysql问题解决方法1067 can not connect to localhost (带MySql常用错误代码表)
- 关于WIN10 edge浏览器报错 找不到DNS地址 错误代码:INET_E_RESOURCE_NOT_FOUND 的解决方法
- datalist 的用法。也是增删改查,但是比较智能。用数据绑定的方式,可以有不同的显示方法,下面是对一个表的增删改查的参考代码