Помогите с проблемкой новичку

 
 
 
Сообщения:1
Я изучаю джаву недолго, делаю приложение для портфолио, столкнулся с проблемой вывода текста при нажатии на кнопку то есть я нажимаю на кнопку и текст в JLabel должен поменятся. Подскажите как это реализовать и может подскажите как оптимизировать код.
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;
import java.awt.SystemColor;

public class Display {
        
        private static JFrame frame;
        private JPanel mainPanel;
        private JPanel panel1;
        private JPanel panel2;
        private JPanel panel3;
        private JPanel panel4;
        
        private boolean visible = false;
        
        private int money;
        private int kardMoney;
        
        public Label park;
        public Label parknum;
        JButton butt1 = new JButton("Паркомат №1");
        JButton butt2 = new JButton("Паркомат №2");
        JButton butt3 = new JButton("Паркомат №3");
        JButton butt4 = new JButton("Добавить паркомат");
        JButton butt5 = new JButton("X отчёт");
        JButton butt7 = new JButton("Z отчёт");
        JButton butt8 = new JButton("      Отчёты      ");
        JButton butt9 = new JButton("Печать чека");
        JButton butt10 = new JButton("Оплатить");
        JButton butt11 = new JButton("Отмена");
        private JTextField textField;
        private String parknumb;;
        
        /**
         * @wbp.parser.entryPoint
         */
        public void createDisplay(int width, int height, String title) {
                frame = new JFrame(title);
                mainPanel = new JPanel();
                panel1 = new JPanel();
                panel2 = new JPanel();
                panel4 = new JPanel();
                butt1.setBounds(10, 61, 170, 39);
                
                butt1.addActionListener(new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                        
                                parknumb = "1";
                                
                        }
                });
                butt2.setBounds(10, 111, 170, 39);
                
                butt2.addActionListener(new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                
                                parknumb = "2";
                                
                        }
                });
                butt3.setBounds(10, 161, 170, 39);
                
                butt3.addActionListener(new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                
                                
                        }
                });
                butt4.setBounds(10, 211, 170, 23);
                
                butt4.addActionListener(new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                
                                
                        }
                });
                
                butt8.addActionListener(new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                panel3.setVisible(true);
                                
                        }
                });
                
                butt5.addActionListener(new ActionListener() {
                        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                
                                xMon();
                                
                        }
                });

                butt7.addActionListener(new ActionListener() {
        
                        @Override
                        public void actionPerformed(ActionEvent e) {
                                
                                zMon();
                
                        }
                });
                
                
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setSize(800,600);
                frame.setResizable(false);
                
                frame.getContentPane().add(mainPanel, BorderLayout.CENTER);
                mainPanel.setBounds(0, 0, ParkomatMain.getWidth(), ParkomatMain.getHeight());
                mainPanel.setBackground(Color.black);
                mainPanel.setLayout(null);
                
                mainPanel.add(panel1);
                panel1.setBounds(0, 0,249,600);
                panel1.setBackground(Color.lightGray);
                mainPanel.add(panel2);
                panel2.setBounds(250, 0,544,571);
                panel2.setBackground(Color.gray);
                
                panel1.setLayout(null);
                panel1.add(butt1);
                panel1.add(butt2);
                panel1.add(butt3);
                panel1.add(butt4);
                butt8.setBounds(10, 525, 229, 39);
                panel1.add(butt8);
                
                JLabel lblNewLabel = new JLabel("\u041F\u0430\u0440\u043A\u043E\u043C\u0430\u0442\u044B: ");
                lblNewLabel.setFont(new Font("Sitka Subheading", Font.PLAIN, 22));
                lblNewLabel.setBounds(10, 11, 229, 39);
                panel1.add(lblNewLabel);
                panel3 = new JPanel();
                panel3.setBounds(0, 481, 249, 33);
                panel1.add(panel3);
                panel3.setVisible(false);
                panel3.setBackground(SystemColor.inactiveCaption);
                panel3.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
                panel3.add(butt5);
                panel3.add(butt7);
                
                panel2.setLayout(null);
                butt10.setBounds(277, 528, 137, 32);
                panel2.add(butt10);
                butt11.setBounds(424, 528, 110, 32);
                panel2.add(butt11);
                butt9.setBounds(10, 528, 147, 32);
                panel2.add(butt9);
                
                JLabel lblNewLabel_1 = new JLabel("Паркомат: ");
                lblNewLabel_1.setFont(new Font("Sitka Subheading", Font.PLAIN, 22));
                lblNewLabel_1.setBounds(10, 11, 188, 32);
                panel2.add(lblNewLabel_1);
                
                JButton btnNewButton = new JButton("\u0421\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F");
                btnNewButton.setBounds(371, 11, 163, 32);
                panel2.add(btnNewButton);
                
                JLabel lblNewLabel_2 = new JLabel("\u041D\u043E\u043C\u0435\u0440 \u0442\u0430\u043B\u043E\u043D\u0430: ");
                lblNewLabel_2.setFont(new Font("Sitka Subheading", Font.PLAIN, 22));
                lblNewLabel_2.setBounds(10, 50, 163, 32);
                panel2.add(lblNewLabel_2);
                
                textField = new JTextField();
                textField.setBounds(177, 57, 260, 20);
                panel2.add(textField);
                textField.setColumns(10);
                
                JLabel lblNewLabel_3 = new JLabel("\u0412\u0440\u0435\u043C\u044F \u0432\u044C\u0435\u0437\u0434\u0430: ");
                lblNewLabel_3.setFont(new Font("Sitka Subheading", Font.PLAIN, 22));
                lblNewLabel_3.setBounds(10, 90, 163, 32);
                panel2.add(lblNewLabel_3);
                
                JLabel lblNewLabel_4 = new JLabel("\u0412\u0440\u0435\u043C\u044F \u0432\u044B\u0435\u0437\u0434\u0430: ");
                lblNewLabel_4.setFont(new Font("Sitka Subheading", Font.PLAIN, 22));
                lblNewLabel_4.setBounds(10, 125, 163, 32);
                panel2.add(lblNewLabel_4);
                
                JLabel lblNewLabel_5 = new JLabel();
                panel2.add(lblNewLabel_5);
                lblNewLabel_5.setText(parknumb);
                lblNewLabel_5.setFont(new Font("Sitka Subheading", Font.PLAIN, 22));
                lblNewLabel_5.setBounds(144, 11, 35, 32);
                
                
                butt5.getActionCommand();
                butt7.getActionCommand();
                butt8.getActionCommand();
                butt1.getActionCommand();
                butt2.getActionCommand();
                
                mainPanel.add(panel4);
                panel4.setVisible(visible);
                
                frame.setVisible(true);
        }
        
        double sum = money + kardMoney;
        
        public void clearDisplay() {
                
        }
        
        public void xMon() {
                System.out.println("Сумма налички: " + money);
                System.out.println("Сумма безнала: " + kardMoney);
                System.out.println("Сумма кассы: " + sum);
                
        }
        
        public void zMon() {
                System.out.println("Сумма кассы: " + sum);
                nullKass();
        }
        
        public void nullKass() {
                money = 0;
                kardMoney = 0;
        }

        public JFrame getFrame() {
                return frame;
        }

        public JPanel getMainPanel() {
                return mainPanel;
        }

        public JPanel getPanel1() {
                return panel1;
        }

        public JPanel getPanel2() {
                return panel2;
        }
}
public class ParkomatMain {
        
        private static int width = 800;
        private static int height = 600;
        private static String title = "Контрольный пункт парковки";
        private static Display disp;
        
        public static void main(String[] args) {
                disp = new Display();
                disp.createDisplay(width, height, title);
        }

        public static int getWidth() {
                return width;
        }

        public static int getHeight() {
                return height;
        }
        
}
 
 
Сообщения:11
Дмитрий Яницкий:
Я изучаю джаву недолго, делаю приложение для портфолио, столкнулся с проблемой вывода текста при нажатии на кнопку то есть я нажимаю на кнопку и текст в JLabel должен поменятся. Подскажите как это реализовать и может подскажите как оптимизировать код.

Вот ни чего не понял, какую кнопку ты жмешь? Зачем весь код сюда положил? Но суть нажатия кнопки и изменения такова:

public void Buttom1(ActionEvent e) {
label1.setText("Новая надпись");
}
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет