package work; import javax.swing.*; import java.awt.event.*; public class Work extends JFrame { private static final long serialVersionUID = 1L; private JPanel contents = null; private JButton btnMessage1 = null; private JButton btnMessage2 = null; private JButton btnMessage3 = null; private JButton btnConfirm1 = null; private JButton btnConfirm2 = null; private JButton btnConfirm3 = null; private JButton btnInput1 = null; private JButton btnInput2 = null; private JButton btnInput3 = null; private ImageIcon icon = null; private final String TITLE_message = "Вікно повідомлення"; private final String TITLE_confirm = "Вікно підтверждення"; private final String[] town = { "Харків", "Одеса", "Тернопіль", "Теребовля"}; public Work() { super("Приклад використання JOptionPane"); setDefaultCloseOperation(EXIT_ON_CLOSE); // Локализація кнопок UIManager.put("OptionPane.yesButtonText" , "Так" ); UIManager.put("OptionPane.noButtonText" , "Ні" ); UIManager.put("OptionPane.cancelButtonText", "Скасувати"); contents = new JPanel(); icon = new ImageIcon("netbeans.png"); // Кнопки виклику вікон btnMessage1 = new JButton("1"); btnMessage2 = new JButton("2"); btnMessage3 = new JButton("3"); btnConfirm1 = new JButton("4"); btnConfirm2 = new JButton("5"); btnConfirm3 = new JButton("6"); btnInput1 = new JButton("7"); btnInput2 = new JButton("8"); btnInput3 = new JButton("9"); addMessageListeners(); addConfirmListeners(); addInputListeners (); // Розташування кнопок contents.add(btnMessage1);//1 contents.add(btnMessage2);//2 contents.add(btnMessage3);//3 contents.add(btnConfirm1);//4 contents.add(btnConfirm2);//5 contents.add(btnConfirm3);//6 contents.add(btnInput1); //7 contents.add(btnInput2); //8 contents.add(btnInput3); //9 setContentPane(contents); setSize(430, 60); // Задати розміри вікна setVisible(true); // Зробити вікно видимим } // Спостерігачі подій натискання кнопок private void addMessageListeners() // на вікнах повідомлень { btnMessage1.addActionListener(new ActionListener()//1 { public void actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog(Work.this, "

Повідомлення кодом HTML

"+ "MessageDialog з 2 параметрами"); } }); btnMessage2.addActionListener(new ActionListener()//2 { public void actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog ( Work.this, new String[] {"Повідомлення з масиву рядків :", "MessageDialog з 4 параметрами"}, TITLE_message, JOptionPane.ERROR_MESSAGE); } }); btnMessage3.addActionListener(new ActionListener()//3 { public void actionPerformed(ActionEvent e) { JOptionPane.showMessageDialog ( Work.this,"Використання зображення у вікні:\n" +"повідомлення MessageDialog з 5 параметрами", TITLE_message, JOptionPane.INFORMATION_MESSAGE, icon); } }); } private void addConfirmListeners()// на вікнах підтвердження { btnConfirm1.addActionListener(new ActionListener()//4 { public void actionPerformed(ActionEvent e) { // 4 параметри int result = JOptionPane.showConfirmDialog ( Work.this, "Готові навчатися самостійно?", TITLE_confirm, JOptionPane.YES_NO_CANCEL_OPTION); // 2 параметри if (result == JOptionPane.YES_OPTION) JOptionPane.showConfirmDialog(Work.this,"Справді готові?"); else if (result == JOptionPane.NO_OPTION ) JOptionPane.showConfirmDialog(Work.this,"Справді неготові?"); } }); btnConfirm2.addActionListener(new ActionListener()//5 { public void actionPerformed(ActionEvent e) { int result = JOptionPane.showConfirmDialog ( Work.this,"Продовжити роботу програми?",TITLE_confirm, JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE); if (result == JOptionPane.NO_OPTION ) {System.exit(0);} } }); btnConfirm3.addActionListener(new ActionListener()//6 { public void actionPerformed(ActionEvent e) { JOptionPane.showConfirmDialog( Work.this, "Вам подобається значок ліворуч?", TITLE_confirm,JOptionPane.YES_NO_OPTION,JOptionPane.ERROR_MESSAGE, icon); } }); } private void addInputListeners()// на вікнах з вибором { btnInput1.addActionListener(new ActionListener()//7 { public void actionPerformed(ActionEvent e) { String result = JOptionPane.showInputDialog (Work.this,"

Ведіть рядок тексту"); JOptionPane.showInputDialog(Work.this, "Ви ввели", result); } }); btnInput2.addActionListener(new ActionListener()//8 { public void actionPerformed(ActionEvent e) { JOptionPane.showInputDialog(Work.this, new String[] {"Хибний пароль!", "Введіть правильний пароль :"}, "Авторизація",JOptionPane.WARNING_MESSAGE); } }); btnInput3.addActionListener(new ActionListener()//9 { public void actionPerformed(ActionEvent e) { Object result = JOptionPane.showInputDialog (Work.this,"Виберіть найстаровинніше місто :","Історія міст", JOptionPane.QUESTION_MESSAGE, icon, town, town[0]); JOptionPane.showMessageDialog(Work.this, "Ви вибрали місто "+result); } }); } public static void main(String[] args) {new Work();} }