Как называется шаблон проектирования, используемый в AWT / Swing, который обрабатывает события? - PullRequest
0 голосов
/ 21 августа 2009

Я слышал, что есть 2 способа настройки PLAF в Swing. Каково истинное значение PLAF и каковы эти 2 способа?

Ответы [ 3 ]

2 голосов
/ 21 августа 2009

Чтобы ответить на вопрос в вашем заголовке: Наблюдатель - это шаблон проектирования, который использует Swing.

PLAF является ' P с возможностью тяготения L ook A и F eel'. Вот ссылка для PLAF на Java.

Заголовок, относящийся к прослушивателям событий, и PLAF не связаны. Первый связан с обработкой событий - более тесно связан с C в MVC, а второй обычно связан с V новым аспектом MVC.

2 голосов
/ 21 августа 2009

Наблюдательский паттерн .

Некоторые из наиболее заметных реализаций этого шаблона:

  • В библиотеке Java Swing широко используется шаблон наблюдателя. для управления событиями.
1 голос
/ 21 августа 2009

PLAF = Pluggable Look and Feel. По сути, один и тот же пользовательский интерфейс может иметь разные скины при минимальной работе.

Проверьте этот сайт для подробного описания L & F. Короче говоря, на самом деле есть 3 способа настройки PLAF.

1) Через командную строку: java -Dswing.defaultlaf = com.sun.java.swing.plaf.gtk.GTKLookAndFeel MyApp или же java -Dswing.defaultlaf = com.sun.java.swing.plaf.windows.WindowsLookAndFeel MyApp

2) Через файл swing.properties в вашей Java-библиотеке. swing.defaultlaf = com.sun.java.swing.plaf.windows.WindowsLookAndFeel

3) Программно либо с:

//At the beginning of your program
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
//Another option
UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");
//And another
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

//Or during your program - 
UIManager.setLookAndFeel(lnfName);
SwingUtilities.updateComponentTreeUI(frame);
frame.pack();

Приведенная выше ссылка также содержит примеры кода, демонстрирующие, как изменить свой внешний вид.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...