Top.Mail.Ru
Ответы
Аватар пользователя
11лет
Изменено

Нужна помощь с java

Недавно стали изучать java. Было задание создать графический интерфейс пользователя. В общем 4 стороны света (кнопки), а в центре кнопка "center" (код ниже). Теперь нам сказали обработать его, чтобы при нажатии на две любые кнопки названия этих кнопок менялись местами. Помогите написать, но прошу не просто код, а объяснение. Заранее благодарю!

Вот код самого ГИП:

import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class TestFrame {
public static void createGUI() {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame("Test frame");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
JButton northButton = new JButton("NORTH (PAGE_START)");
panel.add(northButton, BorderLayout.NORTH);
JButton southButton = new JButton("SOUTH (PAGE_END)");
panel.add(southButton, BorderLayout.SOUTH);
JButton eastButton = new JButton("EAST (LINE_START)");
panel.add(eastButton, BorderLayout.EAST);
JButton westButton = new JButton("WEST (LINE_END)");
panel.add(westButton, BorderLayout.WEST);
JButton centerButton = new JButton("CENTER");
panel.add(centerButton, BorderLayout.CENTER);
frame.getContentPane().add(panel);
frame.setPreferredSize(new Dimension(550, 300));
frame.pack();
frame.setVisible(true);
frame.setLocationRelativeTo(null);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createGUI();
}
});
}
}

По дате
По рейтингу
Аватар пользователя
Оракул
11лет

Надо добавить к кнопкам слушатели, примерно так:

northButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println(e.getActionCommand());
}
});

Печатает текст кнопки в консоль. Теперь надо отслеживать первую нажатую кнопку; при нажатии на вторую кнопку -- обменивать их заголовки. Сами попробуете это сделать?

Аватар пользователя
Ученик
11лет

Прошу прощения, если можно подробнее. Тяжко мне java дается.

Аватар пользователя
Ученик
11лет

Ой, я поняла! Спасибо огромное!

Аватар пользователя
Ученик
11лет

Всё еще нужна помощь. Так и не пойму как обменивать заголовками. Объясните, пожалуйста.

Аватар пользователя
Ученик
11лет

Вы бы книжку почитали к примеру java философия или яшка учится программировать, половина ваших вопросов просто не было да и в будущем не появлялось бы.

Аватар пользователя
Ученик
11лет

Скачала книжки, яшка уже нравится) Спасибо огромное!



Видео по теме