首页 > 解决方案 > 我如何访问从 jframe 到 jpanel 的方法?

问题描述

在我的btcFrame课堂上,我有方法

private void closeButtonMouseClicked(MouseEvent evt){
        this.dispose();
}

在我BtcTitleBarPanel的按钮中,我倾向于关闭框架。在构造函数中,我将我的侦听器添加到closeButton如下所示。

closeButton.addMouseListener(new MouseAdapter(){
     public void mouseClicked(MouseEvent evt){
         closeButtonMouseClicked(evt);
     }
});

问题是我无法closeButtonMouseClicked在面板中找到方法。我应该怎么做才能解决这个问题?

图片以防万一。 jframe 中的方法 jpanel 中的方法

标签: java

解决方案


我会在Panelfor 中添加一个吸气剂closeButton。在初始化之后Panelframe我会将侦听器添加到Frame.Like 中的按钮,btcPanel.getCloseButton().addActionListener(new ...);并且在此动作侦听器中您可以关闭frame,like btcFrame.this.dispose() 虽然我不确定这是否是一个好习惯,但我几乎总是为侦听事件创建新类,但是在您的这种情况下可能会有所帮助。

PS(题外话):你应该看看如何命名类和方法,你的命名风格是错误的。(即类以大写等开头)


推荐阅读