[英]Random Image in Java
单击按钮时如何显示随机图像? 我需要添加什么才能查看,因此当我单击按钮时图像实际上会发生变化
类ButtonListener
:
public class ButtonListener implements ActionListener {
private Model mod;
public ButtonListener(Model _m){
mod = _m;
}
@Override
public void actionPerformed(ActionEvent e) {
int x = mod.random();
if (x == 1) {
JLabel L1 = new JLabel();
JLabel L2 = new JLabel();
JLabel L3 = new JLabel();
L1.setIcon(new ImageIcon ("Images/Green.png"));
System.out.println("1");
}
else if (x == 2) {
JLabel L1 = new JLabel();
L1.setIcon(new ImageIcon("Images/Purple.png"));
System.out.println("2");
}
else {
JLabel L1 = new JLabel();
L1.setIcon(new ImageIcon("Images/Red.png"));
System.out.println("3");
}
}
}
类View
:
public class View {
public View() {
Model _m = new Model();
JFrame f = new JFrame("....");
JPanel p = new JPanel(new GridLayout(2, 3));
JLabel L1 = new JLabel();
JLabel D = new JLabel();
JLabel L2 = new JLabel();
JLabel L3 = new JLabel();
JButton B = new JButton("Spin");
p.add(L2);
p.add(L3);
p.add(L1);
p.add(D);
p.add(B);
B.addActionListener(new ButtonListener(_m));
f.add(p);
f.pack();
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
类Model
:
public class Model {
public Model(){
}
public int random(){
Random rand = new Random();
return rand.nextInt(4);
}
}
您的代码似乎正在尝试创建类似MVC的程序,如果是,则您的模型需要
完成此操作后,为模型提供了SwingPropertyChangeSupport字段以及允许其他类向此支持对象添加和删除PropertyChangeListener的方法。 然后,我的绑定字段(这里是表示随机int的字段)具有setter方法,并且在该方法中,我的支持对象通过调用其firePropertyChange(...)
方法之一来通知其持有的所有侦听器。
例如,请在此处查看我对类似问题的回答: 将JFileChooser与Swing GUI类和侦听器一起使用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.