Java 如何实现侦听器,以便在单击时突出显示对象?
我的程序是创建一个面板,上面有6个骰子,我可以重新滚动。我希望能够通过单击单个模具(并突出显示单击的模具)来选择单个模具,以便它们不会被重新滚动。我有面板工作,但我似乎无法得到它,所以我可以点击一个模具,并有它突出显示,以便我可以测试我的保存方法Java 如何实现侦听器,以便在单击时突出显示对象?,java,listener,dice,Java,Listener,Dice,我的程序是创建一个面板,上面有6个骰子,我可以重新滚动。我希望能够通过单击单个模具(并突出显示单击的模具)来选择单个模具,以便它们不会被重新滚动。我有面板工作,但我似乎无法得到它,所以我可以点击一个模具,并有它突出显示,以便我可以测试我的保存方法 package UI; import java.awt.*; import javax.swing.*; import java.awt.event.*; public class DieFrame extends JFrame{ /* * in
package UI;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class DieFrame extends JFrame{
/*
* instance variables
*/
private DiePanel die1;
private DiePanel die2;
private DiePanel die3;
private DiePanel die4;
private DiePanel die5;
private DiePanel die6;
private JPanel field;
private JPanel menu;
/*
* constructor
*/
public DieFrame() {
/*
* initialize frame properties
*/
this.setLayout(new FlowLayout());
this.setSize(800, 300);
this.setTitle("Farkle Die");
/*
* Build Panel
*/
this.createFieldPanel();
this.createMenuPanel();
/*
* add the field & menu to frame
*/
this.add(field);
this.add(menu);
}
//-------------------------------------
// Class Method
//-------------------------------------
//-------------------------------------
// Private Helpers
//-------------------------------------
/*
* Build menu panel
*/
private void createMenuPanel() {
menu = new JPanel();
menu.setBounds(0, 300, 250, 100);
//Create button & add listener to it
JButton rollButton = new JButton("Re-Roll");
rollButton.setSize(300, 200);
rollButton.addActionListener(new RollListener());
//Add button to menu area
menu.add(rollButton);
}
/*
* Build field panel
*/
private void createFieldPanel() {
//set up dice field area
field = new JPanel();
field.setBounds(0,0,250,200);
//create the dice and add them
die1 = new DiePanel();
die2 = new DiePanel();
die3 = new DiePanel();
die4 = new DiePanel();
die5 = new DiePanel();
die6 = new DiePanel();
field.add(die1);
field.add(die2);
field.add(die3);
field.add(die4);
field.add(die5);
field.add(die6);
}
//-------------------------------------
//inner classes
//-------------------------------------
private class RollListener implements ActionListener{
public void actionPerformed(ActionEvent e) {
die1.rollDie();
die2.rollDie();
die3.rollDie();
die4.rollDie();
die5.rollDie();
die6.rollDie();
}
public void mouseClicked(MouseEvent arg0) {
die1.this.setBackground(Color.yellow);
}
}
}
请提供演示问题的。请提供演示问题的。