小编Gub*_*ert的帖子

确定MouseListener中单击的JPanel组件.事件处理

我有一个类whitch扩展JPanel:

public class ButtonPanel extends JPanel {

    private label;

    public ButtonPanel() {
        label=new JLabel("waiting for click");
        add(label);
    }

    public void setButtonText() {
        label.setText("just clicked");
    }

}
Run Code Online (Sandbox Code Playgroud)

我有几个添加到JFrame的类的实例.我想创建一个MouseAdapter类的实例,然后将它们作为鼠标监听器添加到我的JFrame上的所有ButtonPanel组件.我看:

ButtonPanel butt1 = new ButtonPanel();
ButtonPanel butt2 = new ButtonPanel();
ButtonPanel butt3 = new ButtonPanel();
//... here goes code which add ButtonPanels to JFrame

MouseAdapterMod mam = new MouseAdapterMod();
butt1.addMouseListener(mam);
butt2.addMouseListener(mam);
butt3.addMouseListener(mam);
Run Code Online (Sandbox Code Playgroud)

MouseAdapterMod类我希望与另一个分开,并找到它自己的包.它应该是这样的:

public class MouseAdapterMod extends MouseAdapter {

    public void mouseClicked(MouseEvent e) {
        //here goes the code of calling setButtonText method of …
Run Code Online (Sandbox Code Playgroud)

java swing

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

swing ×1