求大神们指点思路! 求各位大神 实现上面图中的效果,不要求后台的功能实现仅仅是效果。鼠标 单机一个蓝色座位(空座)--> 座位变红色(本次选择) --> 已售出的座位是紫色(已售出点击无效)。我现在掌握的是 JAVASE SWT 只有知识。希望大神指点思路!麻烦各位了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这么回帖不如不回,这上面也有懂不懂都爱教训人的厮,要是求代码不会把帖子发到这上面来想学JAVA谁还不认识几个老师和学长。我说的够详细了是想看看大家什么思路,哥们看不懂吗?还有头像特符合您秉性,Sorry 一定就是您的自拍吧。 import java.awt.Color;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.geom.Area;import java.awt.geom.Ellipse2D;import java.awt.geom.Ellipse2D.Double;import javax.swing.JFrame;/** * http://bbs.csdn.net/topics/390325800 * @author Administrator * */public class ChangeColor extends JFrame{ int x; int y; Color aColor=Color.blue; Color bColor=new Color(255,0,255);//紫色的RGB值 public static void main(String[] args){ new ChangeColor(); } public void paint(Graphics g){ Graphics2D gr=(Graphics2D) g; gr.setColor(Color.blue); Ellipse2D.Double a=new Ellipse2D.Double(50,50,50,50); //可以 用的椅子 Ellipse2D.Double b=new Ellipse2D.Double(150,50,50,50);//不能用的,已经占用的椅子 paintAvailable(gr, a,Color.red); paintTaken(gr,b); }/** * 画已经占用的位子 * @param gr * @param b */ private void paintTaken(Graphics2D gr, Double b) { gr.setColor(bColor); gr.draw(b); gr.fill(b);//涂色 } /** * 画未被占用的位子 * @param gr * @param a * @param fin */ private void paintAvailable(Graphics2D gr, Double a,Color fin) { if(a.contains(x,y)||aColor.equals(fin)){//如果可以使用 gr.setColor(fin); aColor=fin; } gr.draw(a); gr.fill(a);//涂色 } public ChangeColor(){ setSize(500,500); setVisible(true); addMouseListener(new MouseListener() {//鼠标捕捉 @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub x=e.getX(); y=e.getY(); repaint(); } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } }); }} 关于main调用非静态方法 关于使用Java多线程实现倒计时牌的问题多算出30天百思不得其解 多线程中join()方法的使用 关于SOCKET通信问题 如何在JPanel中绘制曲线 郁闷啊,java调用VC的dll,传递String参数时,VC的DLL说,java的String不能转化为VC的string; 如何把byte[]转换成二进制显示出来 有没有一个函数可以直接得到ButtonGroup选中按钮的标题?????? 怎样加密jar文件?怎样防止用户用winrar和winzip解压jar文件? Memcached的批量删除方案总结 新手求问UDP的传输问题 Byte问题
我说的够详细了是想看看大家什么思路,哥们看不懂吗?
还有头像特符合您秉性,Sorry 一定就是您的自拍吧。
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.geom.Area;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Ellipse2D.Double;import javax.swing.JFrame;/**
* http://bbs.csdn.net/topics/390325800
* @author Administrator
*
*/
public class ChangeColor extends JFrame{
int x;
int y;
Color aColor=Color.blue;
Color bColor=new Color(255,0,255);//紫色的RGB值
public static void main(String[] args){
new ChangeColor();
}
public void paint(Graphics g){
Graphics2D gr=(Graphics2D) g;
gr.setColor(Color.blue);
Ellipse2D.Double a=new Ellipse2D.Double(50,50,50,50); //可以 用的椅子
Ellipse2D.Double b=new Ellipse2D.Double(150,50,50,50);//不能用的,已经占用的椅子
paintAvailable(gr, a,Color.red);
paintTaken(gr,b);
}
/**
* 画已经占用的位子
* @param gr
* @param b
*/
private void paintTaken(Graphics2D gr, Double b) {
gr.setColor(bColor);
gr.draw(b);
gr.fill(b);//涂色
}
/**
* 画未被占用的位子
* @param gr
* @param a
* @param fin
*/
private void paintAvailable(Graphics2D gr, Double a,Color fin) {
if(a.contains(x,y)||aColor.equals(fin)){//如果可以使用
gr.setColor(fin);
aColor=fin;
}
gr.draw(a);
gr.fill(a);//涂色
}
public ChangeColor(){
setSize(500,500);
setVisible(true);
addMouseListener(new MouseListener() {//鼠标捕捉
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
x=e.getX();
y=e.getY();
repaint();
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
}
});
}
}