Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мережеві_технології_java_1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
425.98 Кб
Скачать

2. Вказівки до виконання роботи

Проглянути бібліотеки Awt та Swing. Спланувати види робіт з введенння –виведенння. Проглянути приклади реалізації інтерфейск та реакції програми на події.

3. Послідовність виконання роботи

  1. Зробити ескіз графічного інтерфейсу.

  2. Обгрунтувати вибір класів та методів.

  3. Розробити структури даних .

  4. Спроектувати класи для задачі.

  5. Формалізувати алгоритм.

  6. Закодувати візуальні структури.

4.Завдання до лабораторної роботи

  1. Створити клас для виведення текстової інформації у поле класу TextArea.

  2. Використати клас List для реалізації вибору записів з хеш-таблиці на основі ключів із списку.

  3. Створити клас для можливості читання тексту на основі лінійки прокручування ScrolBar).

  4. Створити клас для перегляду зображення з допомогою лінійки прокручування (ScrolBar).

  5. Створити клас з використанням всіх раніше зазначених компонент користувацького інтерфейсу.

  6. Проілюструвати різні форми планування компонування елементів на формі.

4. Контрольні питання

1. Що є Button RadioButton ?

2. Задачі компонети Panel?

3. Що таке контейнери?

4. Які поля для малюванння та написанння тексту?

Лабораторна робота №7

Тема роботи: Пакет користувацького інтерфейсу Swing

Мета роботи: Ознайомитись з класами та методами Пакет користувацького інтерфейсу Swing

1. Опис класів

Java Swing - це  сучасне  розширення бібліотеки AWT користувацького інтерфейсу, що включає нові та покращені компоненти. Вона використовується як для клієнтських , так і серверних програм (аплети, сервлети тощо).  Бібліотека є частиною Java Foundation Classes. Назви класів, що представляють компоненти GUI, починаються літерою J.

Архітектура Swing компонентів дозволяє адаптувати їх вигляд та поведінку. ЇХ можна додавати до існуючих AWT компонент, наприклад, JSlider, JButton та JCheckbox можна використовувати поруч з AWT компонентами labels, textfields та scrollbars.

Компоненти Swing мають архітектуру MVC (модель представля.є дані, перегляд дозволяє контролювати дані та контролер приймає дані та реалізує їх зміни). Ієрархія класів наведена на рис.6.

Рис.6. Ієрархія класів в бібліотеці Swing

Нижче наведено приклад програми з використання двох компонент JFrame, JLabel:

import javax.swing.JFrame;

import javax.swing.JLabel;

public class HelloWorldFrame extends JFrame{

public static void main(String args[]){

new HelloWorldFrame();

}

HelloWorldFrame(){

JLabel jlbHelloWorld = new JLabel("Hello World");

add(jlbHelloWorld);

this.setSize(100, 100);

// pack();

setVisible(true);

}

}

Результатом роботи програми є вікно на рис.7.

Перерахуємо деякі компоненти:

Конец формы

JFrame , JInternalFrame , JWindow, JOptionPane, JLabel, JTextField , JPasswordField, JTextArea, JButton JRadioButton, JCheckBox , JComboBox, JList, JTabbedPane, JMenuBar,

Scrollable, JPopupMenu, JToolBar, BorderLayout, FlowLayout, GridLayout, GridBagLayout.

Ще один приклад ілюструє формування списку об’єктів:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class SimpleList extends JPanel {

String label[] = { "Zero","One","Two","Three","Four","Five","Six",

"Seven","Eight","Nine","Ten","Eleven" };

JList list;

public SimpleList() {

this.setLayout(new BorderLayout());

list = new JList(label);

JScrollPane pane = new JScrollPane(list);

JButton button = new JButton("Print");

button.addActionListener(new PrintListener());

add(pane, BorderLayout.CENTER);

add(button, BorderLayout.SOUTH);

}

public static void main(String s[]) {

JFrame frame = new JFrame("Simple List Example");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setContentPane(new SimpleList());

frame.setSize(250, 200);

frame.setVisible(true);

}

// клас з функцією відповіді на натискання кнопки

class PrintListener implements ActionListener {

public void actionPerformed(ActionEvent e) {

int selected[] = list.getSelectedIndices();

System.out.println("Selected Elements: ");

for (int i=0; i < selected.length; i++) {

String element =

(String)list.getModel().getElementAt(selected[i]);

System.out.println(" " + element);

}

}

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]