Программирование на языке Java


Набор абстракций для работы с окнами - часть 14


} }

Уже знакомая фраза во фрейме – FrameDemo.html.

Меню

С каждым окном верхнего уровня может быть связана линейка меню. Объект MenuBar может включать в себя несколько объектов Menu. Последние, в свою очередь, содержат в себе список вариантов выбора — объектов MenuItem. Menu — подкласс MenuItem, так что объекты Menu также могут включаться в этот список, что позволяет создавать иерархически вложенные подменю. Вот пример, в котором к окну добавлены несколько вложенных меню.

/* <applet code = “MenuDemo” width=200 height=200>

</applet>

*/

import java.awt.*;

import java.applet. *;

public class MenuDemo extends Applet {

public void init() {

int width = Integer.parseInt(getParameter("width"));

int height = Integer.parseInt(getParameter("height"));

Frame f = new Frame("Demo Frame");

f.setSize(width, height);

MenuBar mbar = new MenuBar();

f.setMenuBar(mbar);

Menu file = new Menu("File");

file.add(new MenuItem("New... "));

file.add(new MenuItem("0pen..."));

file.add(new MenuItem("Close"));

file.add(new MenuItem("-"));

file.add(new MenuItem("Quit..."));

mbar.add(file);

Menu edit = new Menu("Edit");

edit.add(new MenuItem("Cut"));

edit.add(new MenuItem("Copy"));

edit.add(new Menultem("Paste"));

edit.add(new MenuItem("-"));

Menu sub = new Menu("Special");

sub.add(new MenuItem("First"));

sub.add(new MenuItem("Second"));

sub.add(new MenuItem("Third"));

edit.add(sub);

edit.add(new CheckBoxMenuItem("Debug"));

edit.add(new CheckBoxMenuItem("Testing"));

mbar.add(edit);

f.show();

} }

Посмотрим на практически классическое меню – MenuDemo.html.

AWT при свете дня

AWT в своем нынешнем виде делает прекрасную работу, являясь общим знаменателем - библиотекой, единой для всех платформ. Некоторый недостаток AWT в том, что, поскольку каждый из AWT-компонентов реализован на основе соответствующего компонента базовой операционной системы, их поведение и внешний вид может меняться при смене платформы. Хорошо известны расширения и аналоги AWT – Swing, Java Foundation Classes (Netscape), Application Foundation Classes (Microsoft).




- Начало -  - Назад -  - Вперед -