Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Использование переменной из другого класса 
:(
    Опции темы
zinkich
Дата 8.10.2016, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 8.10.2016

Репутация: нет
Всего: нет



Как при нажатии на кнопку использовать переменную из другого класса?
Есть код проекта, схематично имеющий такую структуру:
Код

package testproject;

import javax.swing.JFrame;
import javax.swing.SwingWorker;

public class NewClass extends javax.swing.JFrame {
    
    public static JFrame jfr;
    public static Object[][] DannieTablic;
    public static Task task;
     
    public NewClass(){
        jtask();
    }
     
    public static void jtask(){
        task = new Task();
        task.execute();
        System.out.println("jtask()");
    }
    
    static class Task extends SwingWorker < Void, Void > {
        
        public Void doInBackground() {
            
            if (true){ 
                
                DannieTablic[0][0] = 17; //не уверен, что присваивает
                System.out.println(DannieTablic[0][0]);// не выводит
                System.out.println("In doInBackground()");// не выводит
                //в таком виде все присваивается нормально, но это как бы другая переменная получается
                Object[][] DannieTablic = {{"1337","10","3","4","5"},
                                {"2","23","3","44","5"},
                                {"3","2","35","4","5"},
                                {"4","2","3","42","5"},
                                {"5","26","31","4","5"}
                                                      };  
                
            }
            return null;
        }
   }
}


Код

package testproject;

public class NewJFrame extends javax.swing.JFrame {

    public NewJFrame() {
        initComponents();
    }                        

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        Object[][] data = null;
        data[0][0] = NewClass.DannieTablic[0][0];
        System.out.println(NewClass.DannieTablic[0][0]+ " data in NewJframe");// не выводит
        System.out.println(data[0][0]+ " dannietablic from GetData");// не выводит
    }                                        

    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    // End of variables declaration                   
}


Код

package testproject;

public class TestProject {

    public static void main(String[] args) {
        NewClass.jfr = new NewClass();
        new NewJFrame().setVisible(true);
    }
    
}


Конструкция public static вроде бы верная. Но присваивание не происходит и в следствии чего при нажатии на кнопку на Jframe выдает nullException. 
Как нужно сделать правильно, чтобы все работало? 
Нужно, чтобы именно данные задавались внутри public Void doInBackground() в переменную типа Object[][].
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.1014 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.