Zaprogramować prosty edytor graficzny składający się z
menu
rozwijalnego, obszaru rysowania oraz paska stanu.
Opis menu rozwijalnego:
Main
Clear All - czyszczenie
obszaru rysowania,
Exit - zamknięcie okna i zakończenie
działania
aplikacji.
Draw
Figure
Circle - po
wybraniu tej opcji, naciśnięcie klawisza F1 powoduje wykreślenie na
obszarze rysowania koła o stałym promieniu, w losowym kolorze
wykreślacza. Położenie koła jest określone przez aktualną pozycję
kursora myszki (w obrębie obszaru rysowania),
Rectangle - po
wybraniu tej opcji, naciśnięcie klawisza F1
powoduje wykreślenie na obszarze rysowania prostokąt o stałych
rozmiarach, w losowym kolorze wykreślacza. Położenie prostokąta jest
określone
przez aktualną pozycję kursora myszki (w obrębie
obszaru rysowania),
Freehand - po
wybraniu tej opcji możliwe jest wykreślenie linii wzdłuż drogi
przeciągania kursora myszki.
Color - za pomocą JColorChooser możliwe
jest wybranie koloru dla wykreślacza w trybie Freehand.
Dodatkowe funkcje edytora:
a. Pasek stanu pokazuje informacje
o aktualnym trybie rysowania (Circle/Rect/Freehand) ,
b. Niezależnie od aktualnego trybu rysowania, możliwe jest usunięcie
figury (koła lub prostokąta) naciskając przycisk myszki wewnątrz figury
z jednoczesnym wciśnięciem klawisza D
(bez Shift),
c. Uniemożliwić zmiany rozmiarów okna.
Przykładowe ekrany:
Zadanie 26 (4p)
Zaprogramować aplikację zawierającą pole teksowe typu JTextField i listę typu JList - umieszczoną w panelu
przewijanym typu JScrollPane.
Wpisanie tekstu do pola
tekstowego i naciśnięcie ENTER powoduje jego umieszczenie na liście w
odp. miejsce zgodnie z porządkiem leksykograficznym. Napisy na liście
nie mogą się powtarzać. Zaznaczenie jednego (lub kilku) napisu na
liście wyprowadza odp. informacje na konsolę. Dwu-kliknięcie myszką na
zaznaczonym napisie na liście powoduje usunięcie napisu z listy.
Przykładowe ekrany: