0 / 0 / 0
Регистрация: 21.03.2018
Сообщений: 11
1

Проблема с граф.интерфейсом

10.11.2018, 00:31. Показов 1429. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
PЗдравствуйте,ошибка на radiobutton(ы).
Код
[COLOR="Red"]Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at lab2.lab_interface.calculate(lab_interface.java:138)
	at lab2.lab_interface$2.actionPerformed(lab_interface.java:76)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
[/COLOR]
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
package lab2;
 
import java.awt.EventQueue;
import java.awt.TextField;
 
import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.LayoutStyle.ComponentPlacement;
 
 
import javax.swing.JFormattedTextField;
import javax.swing.JTable;
import javax.swing.JLabel;
import javax.swing.table.DefaultTableModel;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.util.Random;
 
import javax.swing.JTextArea;
 
public class lab_interface {
 
    private JFrame frame;
    private static JTextArea textArea;
    private static JRadioButton radioButton;
    private static JRadioButton radioButton_2;
    private static JRadioButton radioButton_1;
    
    private static JFormattedTextField formattedTextField;
    private static int[] array = new int[5];
    static double wait_math = 0, disp = 0, average = 0, probability = 0.2;
    private static JTextField textField;
 
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    lab_interface window = new lab_interface();
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
 
    /**
     * Create the application.
     */
    public lab_interface() {
        initialize();
    }
    
    
    
    private void initialize() {
        frame = new JFrame();
        frame.setBounds(100, 100, 444, 311);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        JRadioButton radioButton_2 = new JRadioButton("\u041C\u0430\u0442.\u043E\u0436\u0438\u0434\u0430\u043D\u0438\u0435");
        
        JButton button = new JButton("\u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044C");
 
        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {
                calculate();
            }
        });
        
        JRadioButton radioButton = new JRadioButton("\u0414\u0438\u0441\u043F\u0435\u0440\u0441\u0438\u044F");
        
        JLabel label = new JLabel("\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0434\u0430\u043D\u043D\u044B\u0435:");
        
        JTextArea textArea = new JTextArea();
        textArea.setLineWrap(true);
        textArea.setEditable(false);
        
        textField = new JTextField();
        textField.setColumns(5);
        
        JRadioButton radioButton_1 = new JRadioButton("\u0421\u0440\u0435\u0434\u043D\u0435\u0435 \u043A\u0432\u0430\u0434\u0440\u0430\u0442\u0438\u0447\u043D\u043E\u0435");
        
        GroupLayout groupLayout = new GroupLayout(frame.getContentPane());
        groupLayout.setHorizontalGroup(
            groupLayout.createParallelGroup(Alignment.TRAILING)
                .addGroup(groupLayout.createSequentialGroup()
                    .addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
                        .addGroup(groupLayout.createSequentialGroup()
                            .addContainerGap()
                            .addComponent(radioButton_2, GroupLayout.PREFERRED_SIZE, 120, GroupLayout.PREFERRED_SIZE)
                            .addGap(18)
                            .addComponent(radioButton, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(ComponentPlacement.RELATED)
                            .addComponent(radioButton_1))
                        .addGroup(groupLayout.createSequentialGroup()
                            .addContainerGap()
                            .addComponent(label))
                        .addComponent(textField, GroupLayout.DEFAULT_SIZE, 434, Short.MAX_VALUE)
                        .addComponent(button, GroupLayout.PREFERRED_SIZE, 434, GroupLayout.PREFERRED_SIZE)
                        .addComponent(textArea))
                    .addContainerGap())
        );
        groupLayout.setVerticalGroup(
            groupLayout.createParallelGroup(Alignment.LEADING)
                .addGroup(groupLayout.createSequentialGroup()
                    .addGap(6)
                    .addComponent(label)
                    .addPreferredGap(ComponentPlacement.RELATED)
                    .addComponent(textField, GroupLayout.PREFERRED_SIZE, 35, GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(ComponentPlacement.RELATED)
                    .addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
                        .addComponent(radioButton_2)
                        .addComponent(radioButton_1, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
                        .addComponent(radioButton, GroupLayout.DEFAULT_SIZE, 58, Short.MAX_VALUE))
                    .addPreferredGap(ComponentPlacement.RELATED)
                    .addComponent(textArea, GroupLayout.PREFERRED_SIZE, 122, GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(ComponentPlacement.RELATED)
                    .addComponent(button, GroupLayout.PREFERRED_SIZE, 23, GroupLayout.PREFERRED_SIZE)
                    .addContainerGap())
        );
        frame.getContentPane().setLayout(groupLayout);
    }
    
    public static void calculate() {
        for (int i = 0; i <= 4; i++) {
            array[i] = Integer.parseInt(textField.getText());
        }
        if(radioButton_2.isSelected()) {
            for (double arr : array) {
                wait_math += arr * probability;
            }
        }
        else if(radioButton.isSelected()) {
            for (double arr : array) {
                disp = (Math.pow(arr, 2) * probability) - (Math.pow(arr * probability,2));
            }
        }
        else if(radioButton_1.isSelected() == true) {
            for (double arr : array) {
                average = Math.sqrt((Math.pow(arr, 2) * probability) - (Math.pow(arr * probability,2)));
            }
        }
        textArea.setText(String.valueOf(wait_math));
        textArea.setText(String.valueOf(disp));
        textArea.setText(String.valueOf(average));
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.11.2018, 00:31
Ответы с готовыми решениями:

Задача Прима-Краскала с граф интерфейсом
Задача Прима-Краскала + нужен минимальный графический интерфейс

посоветуйте монохр. граф. ЖКИ с последовательным интерфейсом
доброго всем дня! посоветуйте монохромный графический ЖКИ с последовательным интерфейсом (не...

Проблема с интерфейсом программ
У меня проблема с открытием adobe reader на windows 10. Не могу понять что это и найти решение в...

Проблема с графическим интерфейсом программы
Пытаюсь сделать граф. интерфейс, вроде что-то вышло, но программа не запускается.Пожалуйста,...

4
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
10.11.2018, 09:26 2
Цитата Сообщение от romanbI44 Посмотреть сообщение
array
этот массив нормальный?

Добавлено через 5 минут
код не запускал.
0
0 / 0 / 0
Регистрация: 21.03.2018
Сообщений: 11
10.11.2018, 11:48  [ТС] 3
Нормальный массив.
0
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
10.11.2018, 11:50 4
а что мешает дебагерм по шагам пройтись и все увидеть?
0
132 / 126 / 85
Регистрация: 13.09.2013
Сообщений: 485
10.11.2018, 23:22 5
Лучший ответ Сообщение было отмечено romanbI44 как решение

Решение

romanbI44, по сути, ты не проинициализировал поля класса.
Посмотри внимательно, ты объявил поле
Java
1
JRadioButton radioButton;
но нигде не присвоил ему значение.

У тебя есть еще запись:
Java
1
JRadioButton radioButton = new JRadioButton
но это локальная переменная, объявленная в методе, и поле класса про нее ничего, по сути, не знает. Убери у нее JRadioButton и тогда ты проинициализируешь поле класса.
Аналогично у тебя с остальными JRadioButton и с textArea
1
10.11.2018, 23:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.11.2018, 23:22
Помогаю со студенческими работами здесь

Проблема с отрисовкой( граф редактор)
Добрый день, не мог не оставить нерешенной эту проблему. Дело в том, что поведение программы...

Граф. Редактор. Проблема с эллипсом и прямоугольником
Здравствуйте, как пофиксить ошибку с отрисовкой нескольких эллипсов или прямоугольников, при...

Граф задан цепными списками. Построить его реберный граф
Дорогие форумчане, прошу помочь с написанием данной программы: Граф задан с помощью цепных...

Как преобразовать неориентированный граф в ориентированный граф из матричной записи
Есть ли какой нибудь алгоритм преобразования Неориентированный графа в ориентированный граф из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru