Page 170 - 4836
P. 170
тоді вікно з'являється по центру екрана. Більш «просунутий»
варіант showMessageDialog (Component component, Object
content, String title, int type) дозволяє задати також свій
заголовок вікна і вибрати його тип (впливає на іконку у вікні):
повідомлення про помилку (ERROR_MESSAGE),
попередження (WARNING_MESSAGE), інформація
INFORMATION_MESSAGE) .
Діалогове вікно є модальним. Це означає, що поки
користувач не натисне в цьому вікні кнопку OK, програма
виявиться заблокована - користувач не зможе працювати з
іншими вікнами.
Поспостерігаємо дію методу на простому прикладі:
public class SimpleWindow extends JFrame {
private JButton button;
SimpleWindow () {
super ( " Попереджувальний діалог" ) ;
setDefaultCloseOperation ( EXIT_ON_CLOSE ) ;
button = new JButton ( "Інформація " ) ;
button.addActionListener ( new ActionListener () {
public void actionPerformed ( ActionEvent event ) {
JOptionPane.showMessageDialog (button, "Не треба було
натискати на цю кнопку", "Інформація",
JOptionPane.WARNING_MESSAGE);
} } ) ;
getContentPane ( ) . setLayout ( new FlowLayout ( ));
getContentPane ( ) . add ( button ) ; setSize ( 200,150 );
}}
Кнопка button зроблена полем класу вікна, щоб можна
було отримати до неї доступ з анонімного класу - слухача.
Іншу часто використовують діалогове вікно - вікно
питання. У цьому вікні кілька кнопок, одну з яких користувач
повинен натиснути. У програму, що викликає це діалогове
168