Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Контейнер Dialog




Контейнер Dialog – это окно обычно фиксированного размера, предназначенное для ответа на сообщения приложения. Оно автоматически регистрируется в оконном менеджере графической оболочки, следовательно, его можно перемещать по экрану, менять его размеры. Но окно типа Dialog, как и его суперкласс – окно типа window, – обязательно имеет владельца owner, который указывается в конструкторе. Окно типа Dialog может быть модальным (modal), в котором надо обязательно выполнить все предписанные действия, иначе из окна нельзя будет выйти.

В классе семь конструкторов. Из них:

  • Dialog (Dialog owner) – создает немодальное диалоговое окно с пустой строкой заголовка;
  • Dialog (Dialog owner, string title) – создает немодальное диалоговое-окно со строкой заголовка title;
  • Dialog(Dialog owner, String title, boolean modal) – создает диалоговое окно, которое будет модальным, если modal == true.

Четыре других конструктора аналогичны, но создают диалоговые окна, принадлежащие окну типа Frame:

Dialog(Frame owner)

Dialog(Frame owner. String title)

Dialog(Frame owner, boolean modal)

Dialog(Frame owner, String title, Boolean modal)

Среди методов класса интересны методы: isModal (), проверяющий состояние модальности, и setModal(boolean modal), меняющий это состояние.

Кроме Событий класса Component: ComponentEvent, FocusEvent, KeyEvent, MouseEvent, при изменении размеров окна, его перемещении или удалении с экрана, а также показа на экране происходит событие windowEvent.

Листинг 10.6. Модальное окно доступа

import j ava.awt.*;

import Java.awt.event.*;

class LoginWin extends Dialog{

LoginWin(Frame f, String s){

super (f, s, true);

setLayout(null);

setFont(new Font("Serif", Font. PLAIN, 14));

Label l1 = new Label("Ваше имя:", Label. RIGHT);

l1.setBounds(20, 30, 70, 25); add(l1);

Label l2 = new Label("Пароль:", Label. RIGHT);

l2.setBounds(20, 60, 70, 25); add(l2);

TextField tfl = new TextField(30);

tfl.setBounds(100, 30, 160, 25); add(tfl);

TextField tf2 = new TextField(30);

tf2.setBounds(100, 60, 160, 25); add(tf2);

tf2.setEchoChar('*');

Button bl = new Button("Применить");

bl.setBounds(50, 100, 100, 30); add(bl);

Button b2 = new Button("Отменить");

b2.setBounds(160, 100, 100, 30); add(b2);

setBounds(50, 50, 300, 150); } }

 

class My_win extends Frame{

My_win(String s){

super (s);

setLayout(null); setSize(200, 100);

setVisible(true);

Dialog d = new LoginWin(this,"Окно входа"); d.setVisible(true);

}

public static void main(String[] args){

Frame f = new My_win(" Окно-владелец");

f.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent ev){

System.exit(0);

}

});

}

}

Рисунок. 1.6. Модальное окно доступа




Поделиться с друзьями:


Дата добавления: 2015-07-02; Просмотров: 313; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.