2015-09-06 4 views
2

У меня возникла проблема с попыткой доступа к этому ключевому слову в другом классе с использованием программирования Java. Я попытался контекст, но не class.this помощи еще ...Как получить доступ к этому ключевому слову В другом классе

Я создал проект с использованием NetBeans GUI Builder, я хочу, когда я нажимаю кнопку форму, чтобы получить расположены ...

Основного класса содержит событие щелчка для размещения в JFrame Form BestQSystems.java:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
      CloseWindow.closeWindow(); 

    } 

Класс закрыть JFrame: CloseWindow.java

import java.awt.Toolkit; 
import java.awt.event.WindowEvent; 
import javax.naming.Context; 

/* 
* To change this license header, choose License Headers in Project Properties. 
* To change this template file, choose Tools | Templates 
* and open the template in the editor. 
*/ 

/** 
* 
* @author Benson 
*/ 
public class CloseWindow { 
    public static void closeWindow(){ 
     WindowEvent widnowEvent = new WindowEvent(this, WindowEvent.WINDOW_CLOSING); 
     Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(widnowEvent); 
    } 
} 

Am Хавин g ошибка в этой строке WindowEvent widnowEvent = new WindowEvent(this, WindowEvent.WINDOW_CLOSING); Пожалуйста, сообщите мне, как получить доступ к ключевому слову this в другом классе.

ответ

2

Вы можете передать ссылку на this другому методу. Например:

BestQSystems.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
     CloseWindow.closeWindow(this); 
} 

и в CloseWindow.java

public class CloseWindow { 
    public static void closeWindow(BestQSystems ref){ 
     WindowEvent widnowEvent = new WindowEvent(ref, WindowEvent.WINDOW_CLOSING); 
    } 
} 
+0

Am извините вы, пожалуйста, помогите мне, пожалуйста, здесь .. предположим BestQSystems.java выглядел как этот –

+0

@KarueBensonKarue Этот пример будет работать только в том случае, если 'BestQSystems' расширяет' Window' или подкласс 'Window'. – Titus

+0

Хорошо, я понимаю, и я очень ценю вашу помощь ... Еще один вопрос, хотя .. Что делать, если я хочу передать ссылку «BestQSystems» на другой класс из «CloseWindow.java» ... Я имею в виду, что у меня есть класс Вход, содержащий функции для входа в систему, поэтому после входа в систему пользователь получит форму для размещения. Итак, в BestQSystems.java я только что вызвал функцию входа в систему ... Все, что нужно добавить здесь –