我想dispose()
我当前的jFrame
并转到下一个jFrame(StudentProfilepage())。但它在this.dispose()
显示错误。
我该怎么做。我使用MouseListner
一个jLabel l1
我的代码如下
l1.setCursor(Cursor.getDefaultCursor());
l1.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent e) {
//added check for MouseEvent.BUTTON1 which is left click
if (e.isPopupTrigger() || e.getButton() == MouseEvent.BUTTON1) {
this.dispose(); //error here(i want to close my current frame and move to StudentProfile() page
new StudentProfilePage().setVisible(true);
}
}
});
答案 0 :(得分:3)
this
this.dispose();
指的是MouseAdapter
,因此是您看到的编译错误。
您需要在JFrame
JFrameClassName.this.dispose();
另请考虑使用JDialog
而不是JFrame
作为第二个窗口。阅读The Use of Multiple JFrames, Good/Bad Practice?
答案 1 :(得分:3)
你应该写
YourClassName.this.dispose();
指向您的jframe
。