private void swap(JButton btn){
if(btn.getBackground().equals(color)){
btn.setBackground(bgColor);
}else{
btn.setBackground(color);
}
String[] pos=btn.getActionCommand().split(",");
int x=Integer.valueOf(pos[0]);//Integer.valueof(String s)是将一个包装类是将一个实际值为数字的变量先转成string型再将它转成Integer型的包装类对象
//(相当于转成了int的对象)这样转完的对象就具有方法和属性了。
int y=Integer.valueOf(pos[1]);
JButton up_btn=null;
JButton down_btn=null;
JButton left_btn=null;
JButton right_btn=null;
if(x-1>=0){
up_btn=btns[x-1][y];
}
if(x+1<this.getLevel()){
down_btn=btns[x+1][y];
}
if(y-1>=0){
left_btn=btns[x][y-1];
}
if(y+1<this.getLevel()){
right_btn=btns[x][y+1];
}
if(up_btn!=null){
if(up_btn.getBackground().equals(color)){
up_btn.setBackground(bgColor);
}else{
up_btn.setBackground(color);
}
}
if(down_btn!=null){
if(down_btn.getBackground().equals(color)){
down_btn.setBackground(bgColor);
}else{
down_btn.setBackground(color);
}
}
if(left_btn!=null){
if(left_btn.getBackground().equals(color)){
left_btn.setBackground(bgColor);
}else{
left_btn.setBackground(color);
}
}
if(right_btn!=null){
if(right_btn.getBackground().equals(color)){
right_btn.setBackground(bgColor);
}else{
right_btn.setBackground(color);
}
}
}
if(btn.getBackground().equals(color)){
btn.setBackground(bgColor);
}else{
btn.setBackground(color);
}
String[] pos=btn.getActionCommand().split(",");
int x=Integer.valueOf(pos[0]);//Integer.valueof(String s)是将一个包装类是将一个实际值为数字的变量先转成string型再将它转成Integer型的包装类对象
//(相当于转成了int的对象)这样转完的对象就具有方法和属性了。
int y=Integer.valueOf(pos[1]);
JButton up_btn=null;
JButton down_btn=null;
JButton left_btn=null;
JButton right_btn=null;
if(x-1>=0){
up_btn=btns[x-1][y];
}
if(x+1<this.getLevel()){
down_btn=btns[x+1][y];
}
if(y-1>=0){
left_btn=btns[x][y-1];
}
if(y+1<this.getLevel()){
right_btn=btns[x][y+1];
}
if(up_btn!=null){
if(up_btn.getBackground().equals(color)){
up_btn.setBackground(bgColor);
}else{
up_btn.setBackground(color);
}
}
if(down_btn!=null){
if(down_btn.getBackground().equals(color)){
down_btn.setBackground(bgColor);
}else{
down_btn.setBackground(color);
}
}
if(left_btn!=null){
if(left_btn.getBackground().equals(color)){
left_btn.setBackground(bgColor);
}else{
left_btn.setBackground(color);
}
}
if(right_btn!=null){
if(right_btn.getBackground().equals(color)){
right_btn.setBackground(bgColor);
}else{
right_btn.setBackground(color);
}
}
}
解决方案 »
- 父类引用指向指向子类对象有啥作用呢?作何解释?
- 请问谁看过孙鑫的Struts2深入详解和开发者突击:Struts 2核心技术与Java EE框架整合开发实战这两本书?
- 求助,今天在安装JDK1.6后javac运行不了?
- 简单图形编程编译时的问题
- 如何获取图片的长和宽
- 望高手帮忙:在web方式下如何将本地的文件以字节流的方式上传在服务器,而不采用files上载的方式提交????
- 关于finalize()调用
- 为何发现不了cloudscape的demo数据库?
- 为什么我在JB里编代码时,光标总是不与我写代码地方一致呀,我该怎么办呢
- 小弟想用java做个sygate
- 请问JBuilder2007如何实现JBuilder2006的组件对齐
- 加密解密
if(up_btn.getBackground().equals(color)){
up_btn.setBackground(bgColor);//bian mian ban se
}else{
up_btn.setBackground(color);
}
}
就解释这段吧。还有,我怎么判断所有的BUTTON都变色了?
int x=Integer.valueOf(pos[0]);//Integer.valueof(String s);
int y=Integer.valueOf(pos[1]);
解释这几句好了,那几句我看懂了
获得一堆按钮动作事件名称,然后存在数组里面,还转换成int...看不懂要干什么..
if(up_btn!=null){
if(up_btn.getBackground().equals(color)){
up_btn.setBackground(bgColor);
}else{
up_btn.setBackground(color);
}
} 判断up_btn的Background是否和color一致
不明白你的意思