Метод initcomponents()
инициализирует все объекты компонентов Java-свинга, используемые вашим интерфейсом переднего плана, с помощью построителя графического интерфейса пользователя NetBeans.Я вижу, что вы уже используете NetBeans GUI Builder, и среда IDE сгенерировала код во время разработки,
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton1.setText("jButton1");
jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton1MousePressed(evt);
}
});
jButton2.setText("jButton1");
jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton2MousePressed(evt);
}
});
jButton3.setText("jButton1");
jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton3MousePressed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(138, 138, 138)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton1)
.addComponent(jButton2)
.addComponent(jButton3))
.addContainerGap(189, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(75, 75, 75)
.addComponent(jButton1)
.addGap(42, 42, 42)
.addComponent(jButton2)
.addGap(46, 46, 46)
.addComponent(jButton3)
.addContainerGap(73, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
Так вот, как среда IDE NetBeans помогает вам разрабатывать приложения, не вводя больше кодов, а разрабатывая.Довольно просто, ха:)
Эти компоненты свинга автоматически генерируются внутри вышеописанного метода всякий раз, когда вы вносите изменения в дизайн вашего GUI с помощью GUI Builder.
Вы не должны изменять какие-либо аспектыприведенный выше код в этом методе, поскольку этот метод неразрывно связан со сборщиком графического интерфейса пользователя NetBeans.Если вы измените код, ваш Front-End также будет изменен.Но если вы хотите изменить код, который вам решать, позаботьтесь о нем.
Метод initComponents();
вызывается внутри конструктора по умолчанию NetBeans.И это по умолчанию private
.Запуск этого initComponents();
метода внутри Constructor
покажет Front-End, как только приложение запустится.
public Sterge() {
initComponents();
}
Но вы можете вызывать метод initComponents();
где угодно (конструктор или внутри другогометоды).Для Java это как любой другой метод.
Когда я подхожу к вашему меню, я не вижу никаких JMenuBar и JMenuItems .Если они вам нужны, вы можете прочитать о том, как использовать меню из здесь .Но я вижу, что есть 3 кнопок J , как вы сказали, в меню три кнопки.Поэтому я предполагаю, что это те 3 кнопки, о которых вы говорите.
Посмотрите на следующие коды в вашем классе.
private void jButton1MousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
}
private void jButton2MousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
}
private void jButton3MousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
}
Предположим, вам нужно print Hello World!
в консоли после нажатия jButton1
.Здесь место, где вы пишете код.Внутри следующий метод.
private void jButton1MousePressed(java.awt.event.MouseEvent evt) {
System.out.println("Hello World!");
}
Как только вы нажмете кнопку выше, сработает MouseEvent
, и вы увидите текст Hello World!
на консоли.Согласно вашим данным, есть 3 кнопки для 3 функций (выход, правила, игра).Написание кода зависит от вас.:)
private void jButton1MousePressed(java.awt.event.MouseEvent evt) {
// Code for exit the game writes here
}
private void jButton2MousePressed(java.awt.event.MouseEvent evt) {
// Code for show rules writes here
}
private void jButton3MousePressed(java.awt.event.MouseEvent evt) {
// Code for play the game writes here
}
Если вы посмотрите более внимательно на код, сгенерированный NetBeans, вы увидите, что внутри метода initComponents();
есть этот код,
jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton3MousePressed(evt);
}
});
NetBeans использует эту структуручтобы предотвратить внесение изменений в стандартный код, которые могут привести к некорректной обработке событий, что позволит вам одновременно написать код, который необходимо выполнить при возникновении этого события.
Поскольку вы использовали MouseListener Я предлагаю не использовать MouseListener.JButton предназначен для использования с ActionListener .
public void jButton3ActionPerformed(ActionEvent e) {
// Your code here
}
Сгенерированный код ActionListener
в построителе графического интерфейса пользователя NetBeans будет
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
ТакЯ перестану писать отсюда, так как не могу охватить все вопросы в этом.Следующие ссылки предоставляют очень хорошее краткое руководство по основам компоновщика графического интерфейса NetBeans.
Надеюсь, это поможет вам.Удачного кодирования!