Skrócona instrukcja AWT

Graficzny interfejs użytkownika

Graficzny interfejs użytkownika (GUI) oferuje interakcję z użytkownikiem za pośrednictwem niektórych elementów graficznych. Na przykład nasz podstawowy system operacyjny oferuje również GUI za pośrednictwem okna, ramki, panelu, przycisku, pola tekstowego, obszaru tekstowego, pola listy, pola kombi, etykiety, pola wyboru itp. Wszystkie te elementy są znane jako komponenty. Korzystając z tych komponentów możemy stworzyć interaktywny interfejs użytkownika dla aplikacji.

GUI zapewnia wynik użytkownikowi końcowemu w odpowiedzi na zgłoszone zdarzenia. GUI jest całkowicie oparty na zdarzeniach. Na przykład kliknięcie przycisku, zamknięcie okna, otwarcie okna, wpisanie czegoś w obszarze tekstowym itp. Czynności te nazywane są zdarzeniami. GUI ułatwia użytkownikowi końcowemu korzystanie z aplikacji. To też czyni je interesującymi.

Podstawowe terminologie

Semestr Opis
Składnik Komponent to obiekt posiadający graficzną reprezentację, którą można wyświetlić na ekranie i który może wchodzić w interakcje z użytkownikiem. Przykłady przycisków, pól wyboru, list i pasków przewijania graficznego interfejsu użytkownika.

Pojemnik Obiekt kontenera to komponent, który może zawierać inne komponenty. Komponenty dodane do kontenera są śledzone na liście. Kolejność na liście określa kolejność składowania komponentów w kontenerze od przodu do tyłu. Jeśli podczas dodawania składnika do kontenera nie określono indeksu, zostanie on dodany na końcu listy.

Płyta Panel zapewnia przestrzeń, w której aplikacja może dołączać dowolne inne komponenty, w tym inne panele.

Okno Okno to prostokątny obszar wyświetlany na ekranie. W innym oknie możemy uruchomić inny program i wyświetlić różne dane. Window zapewnia nam środowisko wielozadaniowe. Okno musi mieć ramkę, okno dialogowe lub inne okno zdefiniowane jako jego właściciel podczas tworzenia.

Rama Ramka to okno najwyższego poziomu z tytułem i obramowaniem. Rozmiar ramy obejmuje dowolną powierzchnię wyznaczoną na obramowanie. Ramka jest hermetyzowanawindow. Ma pasek tytułu, pasek menu, obramowania i narożniki zmiany rozmiaru.

Brezentowy Komponent Canvas reprezentuje pusty prostokątny obszar ekranu, na którym aplikacja może rysować. Aplikacja może również przechwytywać zdarzenia wejściowe z użycia z tego pustego obszaru komponentu Canvas.

Przykłady aplikacji opartych na GUI

Poniżej przedstawiono kilka przykładów aplikacji opartych na graficznym interfejsie użytkownika.

  • Zautomatyzowany bankomat (ATM)

  • System biletów lotniczych

  • Kioski informacyjne na dworcach kolejowych

  • Aplikacje mobilne

  • Systemy nawigacji

Zalety GUI nad CUI

  • GUI udostępnia graficzne ikony do interakcji, a CUI (interfejs znakowy) oferuje proste interfejsy tekstowe.

  • GUI sprawia, że ​​aplikacja jest bardziej zabawna i interesująca, z drugiej strony CUI nie.

  • GUI oferuje środowisko klikania i wykonywania w CUI za każdym razem, gdy musimy wprowadzić polecenie dla zadania.

  • Nowy użytkownik może łatwo wchodzić w interakcję z graficznym interfejsem użytkownika za pomocą wskaźników wizualnych, ale jest to trudne w interfejsie użytkownika postaci.

  • GUI oferuje wiele kontroli systemu plików i systemu operacyjnego, podczas gdy w CUI musisz używać poleceń, które są trudne do zapamiętania.

  • Koncepcja systemu Windows w graficznym interfejsie użytkownika pozwala użytkownikowi przeglądać, manipulować i kontrolować wiele aplikacji jednocześnie, podczas gdy w CUI użytkownik może kontrolować jedno zadanie na raz.

  • Graficzny interfejs użytkownika zapewnia środowisko wielozadaniowe, podobnie jak CUI, ale CUI nie zapewnia takiej łatwości, jak GUI.

  • Korzystając z GUI, łatwiej jest kontrolować i nawigować po systemie operacyjnym, który działa bardzo wolno w interfejsie użytkownika poleceń. GUI można łatwo dostosować.

Ta sekcja zawiera instrukcje pobierania i konfigurowania oprogramowania Java na komputerze. Wykonaj poniższe czynności, aby skonfigurować środowisko.

Java SE jest dostępna bezpłatnie pod linkiem Pobierz Javę . Więc pobierasz wersję opartą na systemie operacyjnym.

Postępuj zgodnie z instrukcjami, aby pobrać java i uruchomić .exeaby zainstalować Javę na swoim komputerze. Po zainstalowaniu Javy na komputerze należałoby ustawić zmienne środowiskowe tak, aby wskazywały na prawidłowe katalogi instalacyjne:

Konfigurowanie ścieżki dla systemu Windows 2000 / XP:

Zakładając, że zainstalowałeś Javę w katalogu c: \ Program Files \ java \ jdk :

  • Kliknij prawym przyciskiem myszy „Mój komputer” i wybierz „Właściwości”.

  • Kliknij przycisk „Zmienne środowiskowe” na karcie „Zaawansowane”.

  • Teraz zmień zmienną „Path”, tak aby zawierała również ścieżkę do pliku wykonywalnego Java. Na przykład, jeśli ścieżka jest obecnie ustawiona na „C: \ WINDOWS \ SYSTEM32”, ​​zmień ścieżkę na „C: \ WINDOWS \ SYSTEM32; c: \ Program Files \ java \ jdk \ bin”.

Konfigurowanie ścieżki dla Windows 95/98 / ME:

Zakładając, że zainstalowałeś Javę w katalogu c: \ Program Files \ java \ jdk :

  • Edytuj plik „C: \ autoexec.bat” i dodaj na końcu następujący wiersz:

    'SET PATH =% PATH%; C: \ Program Files \ java \ jdk \ bin'

Konfigurowanie ścieżki dla Linux, UNIX, Solaris, FreeBSD:

Zmienna środowiskowa PATH powinna być ustawiona tak, aby wskazywała, gdzie zostały zainstalowane pliki binarne Java. Zajrzyj do dokumentacji powłoki, jeśli masz z tym problem.

Na przykład, jeśli używasz bash jako powłoki, to dodasz następujący wiersz na końcu swojego '.bashrc: export PATH = / path / to / java: $ PATH'

Popularne edytory Java:

Do pisania programów Java będziesz potrzebować edytora tekstu. Na rynku dostępne są jeszcze bardziej wyrafinowane IDE. Ale na razie możesz rozważyć jedną z następujących kwestii:

  • Notepad : Na komputerze z systemem Windows możesz użyć dowolnego prostego edytora tekstu, takiego jak Notatnik (zalecany w tym samouczku), TextPad.

  • Netbeans :to środowisko Java IDE o otwartym kodzie źródłowym i bezpłatne, które można pobrać z witryny http://www.netbeans.org/index.html.

  • Eclipse : jest także środowiskiem java IDE opracowanym przez społeczność open source eclipse i można je pobrać z witryny http://www.eclipse.org/.

Każdy interfejs użytkownika uwzględnia następujące trzy główne aspekty:

  • UI elements: Są to główne elementy wizualne, które użytkownik ostatecznie widzi i z którymi wchodzi w interakcję. GWT zawiera ogromną listę powszechnie używanych i typowych elementów, od podstawowych do złożonych, które omówimy w tym samouczku.

  • Layouts:Określają sposób organizacji elementów interfejsu użytkownika na ekranie i zapewniają ostateczny wygląd i działanie GUI (graficzny interfejs użytkownika). Ta część zostanie omówiona w rozdziale Układ.

  • Behavior:Są to zdarzenia, które występują, gdy użytkownik wchodzi w interakcję z elementami interfejsu użytkownika. Ta część zostanie omówiona w rozdziale Obsługa wydarzeń.

Każda kontrolka AWT dziedziczy właściwości z klasy Component.

Wprowadzenie

Klasa Componentjest abstrakcyjną klasą bazową dla kontrolek interfejsu użytkownika AWT niezwiązanych z menu. Komponent reprezentuje obiekt z graficzną reprezentacją.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Component klasa:

public abstract class Component
   extends Object
      implements ImageObserver, MenuContainer, Serializable

Pole

Poniżej znajdują się pola dla java.awt.Component klasa:

  • static float BOTTOM_ALIGNMENT - Stała łatwości użycia dla getAlignmentY.

  • static float CENTER_ALIGNMENT - Stała łatwości użycia dla getAlignmentY i getAlignmentX.

  • static float LEFT_ALIGNMENT - Stała łatwości użycia dla getAlignmentX.

  • static float RIGHT_ALIGNMENT - Stała łatwości użycia dla getAlignmentX.

  • static float TOP_ALIGNMENT - Stała łatwości użycia dla getAlignmentY ().

Konstruktory klas

SN Konstruktor i opis
1

protected Component()

Spowoduje to utworzenie nowego komponentu.

Metody klasowe

SN Metoda i opis
1

boolean action(Event evt, Object what)

Przestarzałe. Począwszy od wersji JDK 1.1, należy zarejestrować ten komponent jako ActionListener na komponencie, który uruchamia zdarzenia akcji.

2

void add(PopupMenu popup)

Dodaje określone menu podręczne do składnika.

3

void addComponentListener(ComponentListener l)

Dodaje określony detektor składnika, aby odbierać zdarzenia składnika z tego składnika.

4

void addFocusListener(FocusListener l)

Dodaje określony detektor aktywności, aby otrzymywać zdarzenia aktywności z tego składnika, gdy ten składnik uzyska fokus wejściowy.

5

void addHierarchyBoundsListener(HierarchyBoundsListener l)

Dodaje odbiornik określonych granic hierarchii, aby odbierać zdarzenia związane z granicami hierarchii z tego składnika, gdy zmienia się hierarchia, do której należy ten kontener.

6

void addHierarchyListener(HierarchyListener l)

Dodaje określony odbiornik hierarchii, aby odbierać zdarzenia zmiany hierarchii z tego składnika, gdy zmienia się hierarchia, do której należy ten kontener.

7

void addInputMethodListener(InputMethodListener l)

Dodaje określony odbiornik metody wejściowej, aby odbierać zdarzenia metody wejściowej z tego składnika.

8

void addKeyListener(KeyListener l)

Dodaje określony odbiornik kluczy, aby odbierać zdarzenia kluczy z tego składnika.

9

void addMouseListener(MouseListener l)

Dodaje określony odbiornik myszy, aby odbierać zdarzenia myszy z tego składnika.

10

void addMouseMotionListener(MouseMotionListener l)

Dodaje określony detektor ruchu myszy, aby odbierać zdarzenia ruchu myszy z tego składnika.

11

void addMouseWheelListener(MouseWheelListener l)

Dodaje określony odbiornik kółka myszy, aby odbierać zdarzenia kółka myszy z tego składnika.

12

void addNotify()

Umożliwia wyświetlanie tego komponentu przez połączenie go z natywnym zasobem ekranu.

13

void addPropertyChangeListener(PropertyChangeListener listener)

Dodaje PropertyChangeListener do listy detektorów.

14

void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)

Dodaje PropertyChangeListener do listy detektorów dla określonej właściwości.

15

void applyComponentOrientation(ComponentOrientation orientation)

Ustawia właściwość ComponentOrientation tego składnika i wszystkich zawartych w nim składników.

16

boolean areFocusTraversalKeysSet(int id)

Zwraca czy zestaw kluczy przejścia fokusa dla danej operacji przejścia fokusa został jawnie zdefiniowany dla tego składnika.

17

int checkImage(Image image, ImageObserver observer)

Zwraca stan konstrukcji reprezentacji ekranu określonego obrazu.

18

int checkImage(Image image,int width,int height, ImageObserver observer)

Zwraca stan konstrukcji reprezentacji ekranu określonego obrazu.

19

boolean contains(int x,int y)

Sprawdza, czy ten komponent „zawiera” określony punkt, gdzie x i y są zdefiniowane jako odnoszące się do układu współrzędnych tego komponentu.

20

boolean contains(Point p)

Sprawdza, czy ten komponent „zawiera” określony punkt, w którym współrzędne x i y punktu są zdefiniowane jako odnoszące się do układu współrzędnych tego komponentu.

21

Image createImage(ImageProducer producer)

Tworzy obraz z określonego producenta obrazu.

22

Image createImage(int width,int height)

Tworzy pozaekranowy obraz do narysowania, który będzie używany do podwójnego buforowania.

23

VolatileImage createVolatileImage(int width,int height)

Tworzy ulotny, rysowany poza ekranem obraz, który ma być używany do podwójnego buforowania.

24

VolatileImage createVolatileImage(int width,int height, ImageCapabilities caps)

Tworzy ulotny, nadający się do rysowania obraz poza ekranem o podanych możliwościach.

25

void deliverEvent(Event e)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez dispatchEvent (AWTEvent e).

26

void disable()

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez setEnabled (boolean).

27

protected void disableEvents(long eventsToDisable)

Wyłącza dostarczanie zdarzeń zdefiniowanych przez określony parametr maski zdarzeń do tego komponentu.

28

void dispatchEvent(AWTEvent e)

Wysyła zdarzenie do tego składnika lub jednego z jego składników podrzędnych.

29

void doLayout()

Monituje menedżera układu o rozplanowanie tego komponentu.

30

void enable()

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez setEnabled (boolean).

31

void enable(boolean b)

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez setEnabled (boolean).

32

protected void enableEvents(long eventsToEnable)

Umożliwia dostarczanie zdarzeń zdefiniowanych przez określony parametr maski zdarzeń do tego komponentu.

33

void enableInputMethods(boolean enable)

Włącza lub wyłącza obsługę metody wprowadzania dla tego składnika.

34

protected void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)

Obsługa raportowania zmian właściwości powiązanych dla właściwości logicznych.

35

void firePropertyChange(String propertyName, byte oldValue, byte newValue)

Zgłasza powiązaną zmianę właściwości.

36

void firePropertyChange(String propertyName, char oldValue, char newValue)

Zgłasza powiązaną zmianę właściwości.

37

void firePropertyChange(String propertyName, double oldValue, double newValue)

Zgłasza powiązaną zmianę właściwości.

38

void firePropertyChange(String propertyName, float oldValue, float newValue)

Zgłasza powiązaną zmianę właściwości.

39

void firePropertyChange(String propertyName, long oldValue, long newValue)

Zgłasza powiązaną zmianę właściwości.

40

protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)

Obsługa raportowania zmian właściwości powiązanych dla właściwości obiektu.

41

void firePropertyChange(String propertyName, short oldValue, short newValue)

Zgłasza powiązaną zmianę właściwości.

42

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym składnikiem.

43

float getAlignmentX()

Zwraca wyrównanie wzdłuż osi x.

44

float getAlignmentY()

Zwraca wyrównanie wzdłuż osi y.

45

Color getBackground()

Pobiera kolor tła tego składnika.

46

int getBaseline(int width,int height)

Zwraca linię bazową.

47

Component.BaselineResizeBehavior getBaselineResizeBehavior()

Zwraca wyliczenie wskazujące, jak linia bazowa składnika zmienia się wraz ze zmianą rozmiaru.

48

Rectangle getBounds()

Pobiera granice tego składnika w postaci obiektu Rectangle.

49

Rectangle getBounds(Rectangle rv)

Przechowuje granice tego składnika w return value rv i return rv.

50

ColorModel getColorModel()

Pobiera wystąpienie ColorModel używane do wyświetlania składnika na urządzeniu wyjściowym.

51

Component getComponentAt(int x,int y)

Określa, czy ten składnik lub jeden z jego bezpośrednich podskładników zawiera lokalizację (x, y), a jeśli tak, zwraca zawierający składnik.

52

Component getComponentAt(Point p)

Zwraca składnik lub składnik podrzędny, który zawiera określony punkt.

53

ComponentListener[] getComponentListeners()

Zwraca tablicę wszystkich detektorów składowych zarejestrowanych w tym składniku.

54

ComponentOrientation getComponentOrientation()

Pobiera orientację zależną od języka, która ma być używana do porządkowania elementów lub tekstu w tym komponencie.

55

Cursor getCursor()

Pobiera kursor ustawiony w składniku.

56

DropTarget getDropTarget()

Pobiera DropTarget skojarzony z tym składnikiem.

57

Container getFocusCycleRootAncestor()

Zwraca kontener, który jest korzeniem cyklu aktywności w cyklu przechodzenia aktywności tego składnika.

58

FocusListener[] getFocusListeners()

Zwraca tablicę wszystkich detektorów aktywności zarejestrowanych w tym składniku.

59

Set<AWTKeyStroke> getFocusTraversalKeys(int id)

Zwraca zestaw kluczy przejścia fokusa dla danej operacji przejścia dla tego komponentu.

60

boolean getFocusTraversalKeysEnabled()

Zwraca, czy klawisze przejścia fokusa są włączone dla tego składnika.

61

Font getFont()

Pobiera czcionkę tego składnika.

62

FontMetrics getFontMetrics(Font font)

Pobiera metryki czcionki dla określonej czcionki.

63

Color getForeground()

Pobiera kolor pierwszego planu tego składnika.

64

Graphics getGraphics()

Tworzy kontekst graficzny dla tego komponentu.

65

GraphicsConfiguration getGraphicsConfiguration()

Pobiera GraphicsConfiguration skojarzoną z tym składnikiem.

66

int getHeight()

Zwraca bieżącą wysokość tego składnika.

67

HierarchyBoundsListener[] getHierarchyBoundsListeners()

Zwraca tablicę wszystkich detektorów granic hierarchii zarejestrowanych w tym składniku.

68

HierarchyListener[] getHierarchyListeners()

Zwraca tablicę wszystkich detektorów hierarchii zarejestrowanych w tym składniku.

69

boolean getIgnoreRepaint()

70

InputContext getInputContext()

Pobiera kontekst wejściowy używany przez ten składnik do obsługi komunikacji z metodami wejściowymi, gdy tekst jest wprowadzany w tym składniku.

71

InputMethodListener[] getInputMethodListeners()

Zwraca tablicę wszystkich detektorów metod wejściowych zarejestrowanych w tym składniku.

72

InputMethodRequests getInputMethodRequests()

Pobiera procedurę obsługi żądania metody wejściowej, która obsługuje żądania z metod wejściowych dla tego składnika.

73

KeyListener[] getKeyListeners()

Zwraca tablicę wszystkich detektorów kluczy zarejestrowanych w tym składniku.

74

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym składniku.

75

Locale getLocale()

Pobiera ustawienia regionalne tego składnika.

76

Point getLocation()

Pobiera lokalizację tego składnika w postaci punktu określającego lewy górny róg składnika.

77

Point getLocation(Point rv)

Przechowuje początek x, y tego komponentu w return value rv i return rv.

78

Point getLocationOnScreen()

Pobiera lokalizację tego składnika w postaci punktu określającego lewy górny róg składnika w przestrzeni współrzędnych ekranu.

79

Dimension getMaximumSize()

Pobiera maksymalny rozmiar tego składnika.

80

Dimension getMinimumSize()

Pobiera minimalny rozmiar tego składnika.

81

MouseListener[] getMouseListeners()

Zwraca tablicę wszystkich detektorów myszy zarejestrowanych w tym składniku.

82

MouseMotionListener[] getMouseMotionListeners()

Zwraca tablicę wszystkich detektorów ruchu myszy zarejestrowanych w tym składniku.

83

Point getMousePosition()

Zwraca pozycję wskaźnika myszy w przestrzeni współrzędnych tego składnika, jeśli składnik znajduje się bezpośrednio pod wskaźnikiem myszy, w przeciwnym razie zwraca wartość null.

84

MouseWheelListener[] getMouseWheelListeners()

Zwraca tablicę wszystkich detektorów kółka myszy zarejestrowanych w tym składniku.

85

String getName()

Pobiera nazwę składnika.

86

Container getParent()

Pobiera element nadrzędny tego składnika.

87

java.awt.peer.ComponentPeer getPeer() Deprecated. As of JDK version 1.1, programs should not directly manipulate peers; replaced by boolean isDisplayable().

88

Dimension getPreferredSize()

Pobiera preferowany rozmiar tego składnika.

89

PropertyChangeListener[] getPropertyChangeListeners()

Zwraca tablicę wszystkich detektorów zmian właściwości zarejestrowanych w tym składniku.

90

PropertyChangeListener[] getPropertyChangeListeners(String propertyName)

Zwraca tablicę wszystkich detektorów, które zostały skojarzone z nazwaną właściwością.

91

Dimension getSize()

Zwraca rozmiar tego komponentu w postaci obiektu Dimension.

92

Dimension getSize(Dimension rv)Stores the width/height of this component into return value rv i return rv.

93

Toolkit getToolkit()

Pobiera zestaw narzędzi tego składnika.

94

Object getTreeLock()

Pobiera obiekt blokujący tego składnika (obiekt, który jest właścicielem monitora synchronizacji wątku)

dla operacji drzewa komponentów i układu AWT.

95

int getWidth()

Zwraca bieżącą szerokość tego składnika.

96

int getX()

Zwraca bieżącą współrzędną x początku komponentów.

97

int getY()

Zwraca bieżącą współrzędną y początku komponentów.

98

boolean gotFocus(Event evt, Object what)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processFocusEvent (FocusEvent)

.

99

boolean handleEvent(Event evt)

Przestarzałe. Od wersji 1.1 JDK zastąpiona przez processEvent (AWTEvent).

100

boolean hasFocus()

Zwraca wartość true, jeśli ten składnik jest właścicielem fokusa.

101

void hide()

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setVisible (boolean).

102

boolean imageUpdate(Image img,int infoflags,int x,int y,int w,int h)

Odświeża komponent po zmianie obrazu.

103

boolean inside(int x,int y)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez zawiera (int, int).

104

void invalidate()

Unieważnia ten składnik.

105

boolean isBackgroundSet()

Zwraca czy kolor tła został jawnie ustawiony dla tego składnika.

106

boolean isCursorSet()

Zwraca czy kursor został jawnie ustawiony dla tego składnika.

107

boolean isDisplayable()

Określa, czy można wyświetlić ten składnik.

108

boolean isDoubleBuffered()

Zwraca wartość true, jeśli ten składnik jest zamalowany na obraz pozaekranowy (buffer)

który później zostanie skopiowany na ekran.

109

boolean isEnabled()

Określa, czy ten składnik jest włączony.

110

boolean isFocusable()

Zwraca, czy ten składnik może być aktywny.

111

boolean isFocusCycleRoot(Container container)

Zwraca, czy określony Container jest głównym elementem głównym cyklu aktywności tego składnika.

112

boolean isFocusOwner()

Zwraca wartość true, jeśli ten składnik jest właścicielem fokusa.

113

boolean isFocusTraversable()

Przestarzałe. Od 1.4 zastąpione przez isFocusable ().

114

boolean isFontSet()

Zwraca czy czcionka została jawnie ustawiona dla tego składnika.

115

boolean isForegroundSet()

Zwraca czy kolor pierwszego planu został jawnie ustawiony dla tego składnika.

116

boolean isLightweight()

Lekki komponent nie ma rodzimego odpowiednika pakietu narzędzi.

117

boolean isMaximumSizeSet()

Zwraca wartość true, jeśli maksymalny rozmiar został ustawiony na wartość inną niż null, w przeciwnym razie zwraca wartość false.

118

boolean isMinimumSizeSet()

Zwraca czy setMinimumSize został wywołany z wartością inną niż null.

119

boolean isOpaque()

Zwraca wartość true, jeśli ten składnik jest całkowicie nieprzezroczysty, domyślnie zwraca wartość false.

120

boolean isPreferredSizeSet()

Zwraca wartość true, jeśli preferowany rozmiar został ustawiony na wartość inną niż null, w przeciwnym razie zwraca wartość false.

121

boolean isShowing()

Określa, czy ten składnik jest wyświetlany na ekranie.

122

boolean isValid()

Określa, czy ten składnik jest prawidłowy.

123

boolean isVisible()

Określa, czy ten składnik powinien być widoczny, gdy jego element nadrzędny jest widoczny.

124

boolean keyDown(Event evt,int key)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processKeyEvent (KeyEvent).

125

boolean keyUp(Event evt,int key)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processKeyEvent (KeyEvent).

126

void layout()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez doLayout ().

127

void list()

Wyświetla listę tego składnika w standardowym strumieniu wyjściowym systemu System.out.

128

void list(PrintStream out)

Drukuje listę tego składnika do określonego strumienia wyjściowego.

129

void list(PrintStream out,int indent)

Drukuje listę, zaczynając od określonego wcięcia, do określonego strumienia wydruku.

130

void list(PrintWriter out)

Drukuje listę do określonego pisarza wydruku.

131

void list(PrintWriter out,int indent)

Drukuje listę, zaczynając od określonego wcięcia, do określonego modułu zapisywania wydruku.

132

Component locate(int x,int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getComponentAt (int, int).

133

Point location()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getLocation ().

134

boolean lostFocus(Event evt, Object what)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processFocusEvent (FocusEvent).

135

boolean mouseDown(Event evt,int x,int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processMouseEvent (MouseEvent).

136

boolean mouseDrag(Event evt,int x,int y)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez processMouseMotionEvent (MouseEvent).

137

boolean mouseEnter(Event evt,int x,int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processMouseEvent (MouseEvent).

138

boolean mouseExit(Event evt,int x,int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processMouseEvent (MouseEvent).

139

boolean mouseMove(Event evt,int x,int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processMouseMotionEvent (MouseEvent).

140

boolean mouseUp(Event evt,int x,int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez processMouseEvent (MouseEvent).

141

void move(int x,int y)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setLocation (int, int).

142

void nextFocus()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez transferFocus ().

143

void paint(Graphics g)

Maluje ten składnik.

144

void paintAll(Graphics g)

Maluje ten składnik i wszystkie jego składniki podrzędne.

145

boolean postEvent(Event e)

Przestarzałe. Od wersji 1.1 JDK zastąpione przez dispatchEvent (AWTEvent).

146

boolean prepareImage(Image image,int width,int height, ImageObserver observer)

Przygotowuje obraz do renderowania w tym składniku o określonej szerokości i wysokości.

147

void print(Graphics g)

Drukuje ten komponent.

148

void printAll(Graphics g)

Drukuje ten składnik i wszystkie jego składniki podrzędne.

149

protectedvoid processComponentEvent(ComponentEvent e)

Przetwarza zdarzenia składnika występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów ComponentListener.

150

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia występujące w tym komponencie.

151

protected void processFocusEvent(FocusEvent e)

Procesy skupiają się na zdarzeniach występujących w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów FocusListener.

152

protected void processHierarchyBoundsEvent(HierarchyEvent e)

Przetwarza zdarzenia związane z hierarchią występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów HierarchyBoundsListener.

153

protected void processHierarchyEvent(HierarchyEvent e)

Przetwarza zdarzenia hierarchii występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów HierarchyListener.

154

protectedvoid processInputMethodEvent(InputMethodEvent e)

Przetwarza zdarzenia metody wejściowej występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów InputMethodListener.

155

protected void processKeyEvent(KeyEvent e)

Przetwarza kluczowe zdarzenia występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów KeyListener.

156

protected void processMouseEvent(MouseEvent e)

Przetwarza zdarzenia myszy występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów MouseListener.

157

protected void processMouseMotionEvent(MouseEvent e)

Przetwarza zdarzenia ruchu myszy występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów MouseMotionListener.

158

protected void processMouseWheelEvent(MouseWheelEvent e)

Przetwarza zdarzenia kółka myszy występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów MouseWheelListener.

159

void remove(MenuComponent popup)

Usuwa określone menu podręczne ze składnika.

160

void removeComponentListener(ComponentListener l)

Usuwa określony detektor składnika, aby nie odbierał już zdarzeń składnika z tego składnika.

161

void removeFocusListener(FocusListener l)

Usuwa określony detektor aktywności, aby nie odbierał już zdarzeń aktywności z tego składnika.

162

void removeHierarchyBoundsListener(HierarchyBoundsListener l)

Usuwa określony detektor granic hierarchii, aby nie odbierał już zdarzeń związanych z granicami hierarchii z tego składnika.

163

void removeHierarchyListener(HierarchyListener l)

Usuwa określony odbiornik hierarchii, aby nie odbierał już zdarzeń zmiany hierarchii z tego składnika.

164

void removeInputMethodListener(InputMethodListener l)

Usuwa określony odbiornik metody wejściowej, aby nie odbierał już zdarzeń metody wejściowej z tego składnika.

165

void removeKeyListener(KeyListener l)

Usuwa określony odbiornik kluczy, aby nie odbierał już kluczowych zdarzeń z tego składnika.

166

void removeMouseListener(MouseListener l)

Usuwa określony detektor myszy, aby nie odbierał już zdarzeń myszy z tego składnika.

167

void removeMouseMotionListener(MouseMotionListener l)

Usuwa określony detektor ruchu myszy, aby nie odbierał już zdarzeń ruchu myszy z tego składnika.

168

void removeMouseWheelListener(MouseWheelListener l)

Usuwa określony odbiornik kółka myszy, aby nie odbierał już zdarzeń kółka myszy z tego składnika.

169

void removeNotify()

Sprawia, że ​​ten komponent staje się niemożliwy do wyświetlenia, niszcząc jego rodzimy zasób ekranu.

170

void removePropertyChangeListener(PropertyChangeListener listener)

Usuwa PropertyChangeListener z listy detektorów.

171

void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)

Usuwa PropertyChangeListener z listy detektorów dla określonej właściwości.

172

void repaint()

Maluje ten element na nowo.

173

void repaint(int x,int y,int width,int height)

Ponownie maluje określony prostokąt tego składnika.

174

void repaint(long tm)

Ponownie maluje element.

175

void repaint(long tm,int x,int y,int width,int height)

Odświeża określony prostokąt tego składnika w ciągu milisekund tm.

176

void requestFocus()

Żąda, aby ten składnik uzyskał fokus wejściowy, a przodek najwyższego poziomu tego składnika stał się aktywnym oknem.

177

protected boolean requestFocus(boolean temporary)

Żąda, aby ten składnik uzyskał fokus wejściowy, a przodek najwyższego poziomu tego składnika stał się aktywnym oknem.

178

boolean requestFocusInWindow()

Żąda, aby ten składnik uzyskał fokus wejściowy, jeśli element nadrzędny najwyższego poziomu tego składnika jest już aktywnym oknem.

179

protected boolean requestFocusInWindow(boolean temporary)

Żąda, aby ten składnik uzyskał fokus wejściowy, jeśli element nadrzędny najwyższego poziomu tego składnika jest już aktywnym oknem.

180

void reshape(int x,int y,int width,int height)

Przestarzałe. Od wersji 1.1 JDK zastąpione przez setBounds (int, int, int, int).

181

void resize(Dimension d)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setSize (Dimension).

182

void resize(int width,int height)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setSize (int, int).

183

void setBackground(Color c)

Ustawia kolor tła tego składnika.

184

void setBounds(int x,int y,int width,int height)

Przenosi i zmienia rozmiar tego komponentu.

185

void setBounds(Rectangle r)

Przenosi i zmienia rozmiar tego komponentu, aby był zgodny z nowym prostokątem ograniczającym r.

186

void setComponentOrientation(ComponentOrientation o)

Ustawia zależną od języka orientację, która ma być używana do porządkowania elementów lub tekstu w tym komponencie.

187

void setCursor(Cursor cursor)

Ustawia obraz kursora na określony kursor.

188

void setDropTarget(DropTarget dt)

Skojarz DropTarget z tym komponentem.

189

void setEnabled(boolean b)

Włącza lub wyłącza ten komponent, w zależności od wartości parametru b.

190

void setFocusable(boolean focusable)

Ustawia stan tego składnika, który można ustawić na określoną wartość.

191

void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)

Ustawia klawisze przejścia fokusa dla danej operacji przejścia dla tego komponentu.

192

void setFocusTraversalKeysEnabled(boolean focusTraversalKeysEnabled)

Ustawia, czy klawisze przejścia fokusa są włączone dla tego składnika.

193

void setFont(Font f)

Ustawia czcionkę tego składnika.

194

void setForeground(Color c)

Ustawia kolor pierwszego planu tego składnika.

195

void setIgnoreRepaint(boolean ignoreRepaint)

Ustawia, czy malować wiadomości otrzymane z systemu operacyjnego mają być ignorowane.

196

void setLocale(Locale l)

Ustawia ustawienia regionalne tego komponentu.

197

void setLocation(int x,int y)

Przenosi ten komponent do nowej lokalizacji.

198

void setLocation(Point p)

Przenosi ten komponent do nowej lokalizacji.

199

void setMaximumSize(Dimension maximumSize)

Ustawia maksymalny rozmiar tego składnika na stałą wartość.

200

void setMinimumSize(Dimension minimumSize)

Ustawia minimalny rozmiar tego składnika na stałą wartość.

201

void setName(String name)

Ustawia nazwę składnika na określony ciąg.

202

void setPreferredSize(Dimension preferredSize)

Ustawia preferowany rozmiar tego składnika na stałą wartość.

203

void setSize(Dimension d)

Zmienia rozmiar tego komponentu, tak aby miał szerokość d. Szerokość i wysokość d. Wysokość.

204

void setSize(int width,int height)

Zmienia rozmiar tego komponentu, tak aby miał szerokość, szerokość i wysokość, wysokość.

205

void setVisible(boolean b)

Pokazuje lub ukrywa ten komponent w zależności od wartości parametru b.

206

void show()

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setVisible (boolean).

207

void show(boolean b)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setVisible (boolean).

208

Dimension size()

Przestarzałe. Od wersji JDK 1.1, zastąpione przez getSize ().

209

String toString()

Zwraca ciąg znaków reprezentujący ten składnik i jego wartości.

210

void transferFocus()

Przenosi fokus do następnego składnika, tak jakby ten składnik był właścicielem fokusa.

211

void transferFocusBackward()

Przenosi fokus do poprzedniego składnika, tak jakby ten składnik był właścicielem fokusa.

212

void transferFocusUpCycle()

Przenosi fokus w górę o jeden cykl przechodzenia fokusu.

213

void update(Graphics g)

Aktualizuje ten składnik.

214

void validate()

Zapewnia, że ​​ten składnik ma prawidłowy układ.

215

Rectangle bounds()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getBounds ().

216

protected AWTEvent coalesceEvents(AWTEvent existingEvent, AWTEvent newEvent)

Potencjalnie połączyć publikowane wydarzenie z istniejącym wydarzeniem.

217

protected String paramString()

Zwraca ciąg znaków reprezentujący stan tego składnika.

218

protected void firePropertyChange(String propertyName,int oldValue,int newValue)

Obsługa raportowania zmian właściwości powiązanych dla właściwości całkowitych.

219

Dimension preferredSize()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getPreferredSize ().

220

boolean prepareImage(Image image, ImageObserver observer)

Przygotowuje obraz do renderowania w tym komponencie.

221

Dimension minimumSize()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getMinimumSize ().

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Wprowadzenie

Etykieta jest formantem pasywnym, ponieważ nie tworzy żadnego zdarzenia, gdy uzyskuje do niego dostęp. Kontrolka etykiety jest obiektem Label. Etykieta zawiera pojedynczy wiersz tekstu tylko do odczytu. Jednak tekst może zostać zmieniony przez programistę aplikacji, ale nie może być w żaden sposób zmieniony przez użytkownika końcowego.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Label klasa:

public class Label
   extends Component
      implements Accessible

Pole

Poniżej znajdują się pola dla java.awt.Component klasa:

  • static int CENTER - Wskazuje, że etykieta powinna być wyśrodkowana.

  • static int LEFT - Wskazuje, że etykieta powinna być wyrównana do lewej.

  • static int RIGHT - Wskazuje, że etykieta powinna być uzasadniona do prawej strony.

Konstruktory klas

SN Konstruktor i opis
1

Label()

Konstruuje pustą etykietę.

2

Label(String text)

Konstruuje nową etykietę z określonym ciągiem tekstowym z wyrównaniem do lewej.

3

Label(String text, int alignment)

Tworzy nową etykietę, która przedstawia określony ciąg tekstu z określonym wyrównaniem.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Tworzy element równorzędny dla tej etykiety.

2

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tą Label.

3

int getAlignment()

Pobiera bieżące wyrównanie tej etykiety.

4

String getText()

Pobiera tekst tej etykiety.

5

protected String paramString()

Zwraca ciąg reprezentujący stan tej etykiety.

6

void setAlignment(int alignment)

Ustawia wyrównanie dla tej etykiety na określoną linię trasowania.

7

void setText(String text)

Ustawia tekst tej etykiety na określony tekst.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład etykiety

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showLabelDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showLabelDemo(){
      headerLabel.setText("Control in action: Label");      

      Label label = new Label();
      label.setText("Welcome to TutorialsPoint AWT Tutorial.");
      label.setAlignment(Label.CENTER);
      label.setBackground(Color.GRAY);
      label.setForeground(Color.WHITE);
      controlPanel.add(label);
   
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Przycisk to element sterujący, który ma etykietę i po naciśnięciu generuje zdarzenie. Kiedy przycisk jest wciśnięty i zwolniony, AWT wysyła wystąpienie ActionEvent do przycisku, wywołując processEvent na przycisku. Metoda processEvent przycisku odbiera wszystkie zdarzenia dla przycisku; przekazuje zdarzenie akcji, wywołując własną metodę processActionEvent. Druga metoda przekazuje zdarzenie action do wszystkich detektorów akcji, które zarejestrowały zainteresowanie zdarzeniami akcji wygenerowanymi przez ten przycisk.

Jeśli aplikacja chce wykonać jakąś akcję na podstawie naciśnięcia i zwolnienia przycisku, powinna zaimplementować ActionListener i zarejestrować nowy detektor do odbierania zdarzeń z tego przycisku, wywołując metodę addActionListener przycisku. Aplikacja może używać polecenia akcji przycisku jako protokołu przesyłania wiadomości.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Button klasa:

public class Button
   extends Component
      implements Accessible

Konstruktory klas

SN Konstruktor i opis
1

Button()

Konstruuje przycisk z pustym ciągiem jako etykietą.

2

Button(String text)

Konstruuje nowy przycisk z określoną etykietą.

Metody klasowe

SN Metoda i opis
1

void addActionListener(ActionListener l)

Dodaje określony detektor akcji, aby otrzymywać zdarzenia akcji z tego przycisku.

2

void addNotify()

Tworzy element równorzędny przycisku.

3

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym Button.

4

String getActionCommand()

Zwraca nazwę polecenia zdarzenia akcji wywołanego przez ten przycisk.

5

ActionListener[] getActionListeners()

Zwraca tablicę wszystkich detektorów akcji zarejestrowanych na tym przycisku.

6

String getLabel()

Pobiera etykietę tego przycisku.

7

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym Button.

8

protected String paramString()

Zwraca ciąg reprezentujący stan tego Button.

9

protected void processActionEvent(ActionEvent e)

Przetwarza zdarzenia akcji występujące na tym przycisku, wysyłając je do dowolnych zarejestrowanych obiektów ActionListener.

10

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia na tym przycisku.

11

void removeActionListener(ActionListener l)

Usuwa określony detektor akcji, aby nie odbierał już zdarzeń akcji z tego przycisku.

12

void setActionCommand(String command)

Ustawia nazwę polecenia dla zdarzenia akcji uruchamianego przez ten przycisk.

13

void setLabel(String label)

Ustawia etykietę przycisku na określony ciąg.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład przycisku

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showButtonDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showButtonDemo(){
      headerLabel.setText("Control in action: Button"); 

      Button okButton = new Button("OK");
      Button submitButton = new Button("Submit");
      Button cancelButton = new Button("Cancel");

      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("Ok Button clicked.");
         }
      });

      submitButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("Submit Button clicked.");
         }
      });

      cancelButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("Cancel Button clicked.");
         }
      });

      controlPanel.add(okButton);
      controlPanel.add(submitButton);
      controlPanel.add(cancelButton);       

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Kontrolka pola wyboru służy do włączania (prawda) lub wyłączania opcji (fałsz). Do każdego pola wyboru przypisana jest etykieta przedstawiająca jego działanie. Stan pola wyboru można zmienić, klikając je.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Checkbox klasa:

public class Checkbox
   extends Component
      implements ItemSelectable,Accessible

Konstruktory klas

SN Konstruktor i opis
1

Checkbox()

Tworzy pole wyboru z pustym ciągiem dla swojej etykiety.

2

Checkbox(String label)

Tworzy pole wyboru z określoną etykietą.

3

Checkbox(String label, boolean state)

Tworzy pole wyboru z określoną etykietą i ustawia określony stan.

4

Checkbox(String label, boolean state, CheckboxGroup group)

Konstruuje pole wyboru z określoną etykietą, ustawioną na określony stan i w określonej grupie pól wyboru.

5

Checkbox(String label, CheckboxGroup group, boolean state)

Tworzy pole wyboru z określoną etykietą w określonej grupie pól wyboru i ustawia określony stan.

Metody klasowe

SN Metoda i opis
1

void addItemListener(ItemListener l)

Dodaje określony odbiornik elementów, aby otrzymywać zdarzenia elementów z tego pola wyboru.

2

void addNotify()

Tworzy element równorzędny z pola wyboru.

3

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym polem wyboru.

4

CheckboxGroup getCheckboxGroup()

Określa grupę tego pola wyboru.

5

ItemListener[] getItemListeners()

Zwraca tablicę wszystkich detektorów pozycji zarejestrowanych w tym polu wyboru.

6

String getLabel()

Pobiera etykietę tego pola wyboru.

7

<T extends EventListener>T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym polu wyboru.

8

Object[] getSelectedObjects()

Zwraca tablicę (długość 1) zawierającą etykietę pola wyboru lub wartość null, jeśli pole wyboru nie jest zaznaczone.

9

boolean getState()

Określa, czy to pole wyboru znajduje się w on lub off stan.

10

protected String paramString()

Zwraca ciąg reprezentujący stan tego pola wyboru.

11

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia w tym polu wyboru.

12

protected void processItemEvent(ItemEvent e)

Przetwarza zdarzenia elementu występujące w tym polu wyboru, wysyłając je do dowolnych zarejestrowanych obiektów ItemListener.

13

void removeItemListener(ItemListener l)

Usuwa określony odbiornik elementów, dzięki czemu odbiornik elementów nie otrzymuje już zdarzeń elementu z tego pola wyboru.

14

void setCheckboxGroup(CheckboxGroup g)

Ustawia grupę tego pola wyboru na określoną grupę pól wyboru.

15

void setLabel(String label)

Ustawia etykietę tego pola wyboru jako argument ciągu.

16

void setState(boolean state)

Ustawia stan tego pola wyboru na określony stan.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład CheckBox

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showCheckBoxDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showCheckBoxDemo(){

      headerLabel.setText("Control in action: CheckBox"); 

      Checkbox chkApple = new Checkbox("Apple");
      Checkbox chkMango = new Checkbox("Mango");
      Checkbox chkPeer = new Checkbox("Peer");


      chkApple.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {             
            statusLabel.setText("Apple Checkbox: " 
            + (e.getStateChange()==1?"checked":"unchecked"));
         }
      });

      chkMango.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            statusLabel.setText("Mango Checkbox: " 
            + (e.getStateChange()==1?"checked":"unchecked"));
         }
      });

      chkPeer.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            statusLabel.setText("Peer Checkbox: " 
            + (e.getStateChange()==1?"checked":"unchecked"));
         }
      });

      controlPanel.add(chkApple);
      controlPanel.add(chkMango);
      controlPanel.add(chkPeer);       

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Klasa CheckboxGroup służy do grupowania zestawu pól wyboru.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.CheckboxGroup klasa:

public class CheckboxGroup
   extends Object
      implements Serializable

Konstruktory klas

SN Konstruktor i opis
1

CheckboxGroup() ()

Tworzy nowe wystąpienie CheckboxGroup.

Metody klasowe

SN Metoda i opis
1

Checkbox getCurrent()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getSelectedCheckbox ().

2

Checkbox getSelectedCheckbox()

Pobiera bieżący wybór z tej grupy pól wyboru.

3

void setCurrent(Checkbox box)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setSelectedCheckbox (Checkbox).

4

void setSelectedCheckbox(Checkbox box)

Ustawia zaznaczone pole wyboru w tej grupie jako określone pole wyboru.

5

String toString()

Zwraca ciąg znaków reprezentujący tę grupę pól wyboru, w tym wartość bieżącego wyboru.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład CheckBoxGroup

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showCheckBoxGroupDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showCheckBoxGroupDemo(){
    
      headerLabel.setText("Control in action: CheckBoxGroup"); 

      CheckboxGroup fruitGroup = new CheckboxGroup();

      Checkbox chkApple = new Checkbox("Apple",fruitGroup,true);
      Checkbox chkMango = new Checkbox("Mango",fruitGroup,false);
      Checkbox chkPeer = new Checkbox("Peer",fruitGroup,false);

      statusLabel.setText("Apple Checkbox: checked");
      chkApple.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {             
            statusLabel.setText("Apple Checkbox: checked");
         }
      });

      chkMango.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            statusLabel.setText("Mango Checkbox: checked");
         }
      });

      chkPeer.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            statusLabel.setText("Peer Checkbox: checked");
         }
      });

      controlPanel.add(chkApple);
      controlPanel.add(chkMango);   
      controlPanel.add(chkPeer);       

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Lista przedstawia listę elementów tekstowych. Listę można skonfigurować tak, aby użytkownik mógł wybrać jedną lub wiele pozycji.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.List klasa:

public class List
   extends Component
      implements ItemSelectable, Accessible

Konstruktory klas

SN Konstruktor i opis
1

List()

Tworzy nową listę przewijaną.

2

List(int rows)

Tworzy nową listę przewijaną zainicjowaną określoną liczbą widocznych wierszy.

3

List(int rows, boolean multipleMode)

Tworzy nową listę przewijaną zainicjowaną w celu wyświetlenia określonej liczby wierszy.

Metody klasowe

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners na tej liście.

<T rozszerza EventListener> T [] getListeners (Class <T> listenerType)
SN Metoda i opis
1

void add(String item)

Dodaje określony element na koniec przewijanej listy.

2

void add(String item, int index)

Dodaje określony element do przewijanej listy w pozycji wskazanej przez indeks.

3

void addActionListener(ActionListener l)

Dodaje określony detektor akcji, aby odbierać zdarzenia akcji z tej listy.

4

void addItem(String item)

Przestarzałe. zastąpione przez add (String).

5

void addItem(String item, int index)

Przestarzałe. zastąpione przez add (String, int).

6

void addItemListener(ItemListener l)

Dodaje określony odbiornik elementów, aby otrzymywać zdarzenia elementów z tej listy.

7

void addNotify()

Tworzy rówieśnika dla listy.

8

boolean allowsMultipleSelections()

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez isMultipleMode ().

9

void clear()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez removeAll ().

10

int countItems()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getItemCount ().

11

void delItem(int position)

Przestarzałe. zastąpione przez remove (String) i remove (int).

12

void delItems(int start, int end)

Przestarzałe. Od wersji JDK 1.1 nie do użytku publicznego w przyszłości. Oczekuje się, że ta metoda zostanie zachowana tylko jako metoda prywatna pakietu.

13

void deselect(int index)

Odznacza element o określonym indeksie.

14

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tą listą.

15

ActionListener[] getActionListeners()

Zwraca tablicę wszystkich detektorów akcji zarejestrowanych na tej liście.

16

String getItem(int index)

Pobiera element skojarzony z określonym indeksem.

17

int getItemCount()

Pobiera liczbę elementów na liście.

18

ItemListener[] getItemListeners()

Zwraca tablicę wszystkich detektorów pozycji zarejestrowanych na tej liście.

19

String[] getItems()

Pobiera elementy z listy.

20

Dimension getMinimumSize()

Określa minimalny rozmiar tej przewijanej listy.

21

Dimension getMinimumSize(int rows)

Pobiera minimalne wymiary dla listy z określoną liczbą wierszy.

22

Dimension getPreferredSize()

Pobiera preferowany rozmiar tej listy przewijanej.

23

Dimension getPreferredSize(int rows)

Pobiera preferowane wymiary dla listy z określoną liczbą wierszy.

24

int getRows()

Pobiera liczbę widocznych wierszy na tej liście.

25

int getSelectedIndex()

Pobiera indeks wybranej pozycji z listy,

26

int[] getSelectedIndexes()

Pobiera wybrane indeksy z listy.

27

String getSelectedItem()

Pobiera wybrany element z tej przewijanej listy.

28

String[] getSelectedItems()

Pobiera wybrane elementy z tej przewijanej listy.

29

Object[] getSelectedObjects()

Pobiera wybrane elementy z tej przewijanej listy w tablicy Objects.

30

int getVisibleIndex()

Pobiera indeks elementu, który był ostatnio widoczny przez metodę makeVisible.

31

boolean isIndexSelected(int index)

Określa, czy wybrany element z tej przewijanej listy jest zaznaczony.

32

boolean isMultipleMode()

Określa, czy ta lista umożliwia wybór wielokrotny.

33

boolean isSelected(int index)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez isIndexSelected (int).

34

void makeVisible(int index)

Powoduje, że element o określonym indeksie jest widoczny.

35

Dimension minimumSize()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getMinimumSize ().

36

Dimension minimumSize(int rows)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez getMinimumSize (int).

37

protected String paramString()

Zwraca łańcuch parametrów reprezentujący stan tej przewijanej listy.

38

Dimension preferredSize()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getPreferredSize ().

39

Dimension preferredSize(int rows)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getPreferredSize (int).

40

protected void processActionEvent(ActionEvent e)

Przetwarza zdarzenia akcji występujące w tym składniku, wysyłając je do dowolnych zarejestrowanych obiektów ActionListener.

41

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia na tej przewijanej liście.

42

protected void processItemEvent(ItemEvent e)

Przetwarza zdarzenia pozycji występujące na tej liście, wysyłając je do dowolnych zarejestrowanych obiektów ItemListener.

43

void remove(int position)

Usuwa element w określonej pozycji z tej przewijanej listy.

44

void remove(String item)

Usuwa pierwsze wystąpienie elementu z listy.

45

void removeActionListener(ActionListener l)

Usuwa określony detektor akcji, aby nie odbierał już zdarzeń akcji z tej listy.

46

void removeAll()

Usuwa wszystkie elementy z tej listy.

47

void removeItemListener(ItemListener l)

Usuwa określony detektor elementów, aby nie odbierał już zdarzeń elementów z tej listy.

48

void removeNotify()

Usuwa partnera z tej listy.

49

void replaceItem(String newValue, int index)

Zastępuje element w określonym indeksie na przewijanej liście nowym ciągiem.

50

void select(int index)

Wybiera element pod określonym indeksem z przewijanej listy.

51

void setMultipleMode(boolean b)

Ustawia flagę określającą, czy ta lista umożliwia wielokrotne wybory.

52

void setMultipleSelections(boolean b)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setMultipleMode (boolean).

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład listy

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showListDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showListDemo(){                                       

      headerLabel.setText("Control in action: List"); 
      final List fruitList = new List(4,false);

      fruitList.add("Apple");
      fruitList.add("Grapes");
      fruitList.add("Mango");
      fruitList.add("Peer");

      final List vegetableList = new List(4,true);
   
      vegetableList.add("Lady Finger");
      vegetableList.add("Onion");
      vegetableList.add("Potato");
      vegetableList.add("Tomato");

      Button showButton = new Button("Show");

      showButton.addActionListener(new ActionListener() {

         public void actionPerformed(ActionEvent e) {     
            String data = "Fruits Selected: " 
               + fruitList.getItem(fruitList.getSelectedIndex());
            data += ", Vegetables selected: ";
            for(String vegetable:vegetableList.getSelectedItems()){
               data += vegetable + " ";
            }
            statusLabel.setText(data);
         }
      }); 

      controlPanel.add(fruitList);
      controlPanel.add(vegetableList);
      controlPanel.add(showButton);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Komponent textField umożliwia użytkownikowi edycję pojedynczego wiersza tekstu. Gdy użytkownik wpisze klucz w polu tekstowym, zdarzenie jest wysyłane do TextField. Zdarzeniem klawisza może być naciśnięcie klawisza, zwolnienie klawisza lub wpisanie klawisza. Zdarzenie klucza jest przekazywane do zarejestrowanego KeyListener. Możliwe jest również dla zdarzenia ActionEvent, jeśli w polu tekstowym jest włączone zdarzenie ActionEvent, a następnie można uruchomić zdarzenie ActionEvent, naciskając klawisz powrotu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.TextField klasa:

public class TextField
   extends TextComponent

Konstruktory klas

SN Konstruktor i opis
1

TextField()

Konstruuje nowe pole tekstowe.

2

TextField(int columns)

Konstruuje nowe puste pole tekstowe z określoną liczbą kolumn.

3

TextField(String text)

Konstruuje nowe pole tekstowe zainicjowane określonym tekstem.

4

TextField(String text, int columns)

Konstruuje nowe pole tekstowe zainicjowane określonym tekstem do wyświetlenia i wystarczająco szerokie, aby pomieścić określoną liczbę kolumn.

Metody klasowe

SN Metoda i opis
1

void addActionListener(ActionListener l)

Dodaje określony detektor akcji, aby otrzymywać zdarzenia akcji z tego pola tekstowego.

2

void addNotify()

Tworzy element równorzędny TextField.

3

boolean echoCharIsSet()

Wskazuje, czy to pole tekstowe ma zestaw znaków do echa.

4

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym TextField.

5

ActionListener[] getActionListeners()

Zwraca tablicę wszystkich detektorów akcji zarejestrowanych w tym polu tekstowym.

6

int getColumns()

Pobiera liczbę kolumn w tym polu tekstowym.

7

char getEchoChar()

Pobiera znak, który ma być używany do echa.

8

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym TextField.

9

Dimension getMinimumSize()

Pobiera minimalne wymiary dla tego pola tekstowego.

10

Dimension getMinimumSize(int columns) Gets the minumum dimensions for a text field with the specified number of columns.

11

Dimension getPreferredSize()

Pobiera preferowany rozmiar tego pola tekstowego.

12

Dimension getPreferredSize(int columns)

Pobiera preferowany rozmiar tego pola tekstowego z określoną liczbą kolumn.

13

Dimension minimumSize()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getMinimumSize ().

14

Dimension minimumSize(int columns)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez getMinimumSize (int).

15

protected String paramString()

Zwraca ciąg reprezentujący stan tego pola TextField.

16

Dimension preferredSize()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getPreferredSize ().

17

Dimension preferredSize(int columns)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getPreferredSize (int).

18

protected void processActionEvent(ActionEvent e)

Przetwarza zdarzenia akcji występujące w tym polu tekstowym, wysyłając je do dowolnych zarejestrowanych obiektów ActionListener.

19

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia w tym polu tekstowym.

20

void removeActionListener(ActionListener l)

Usuwa określony detektor akcji, aby nie odbierał już zdarzeń akcji z tego pola tekstowego.

21

void setColumns(int columns)

Ustawia liczbę kolumn w tym polu tekstowym.

22

void setEchoChar(char c)

Ustawia znak echa dla tego pola tekstowego.

23

void setEchoCharacter(char c)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setEchoChar (char).

24

void setText(String t)

Ustawia tekst prezentowany przez ten składnik tekstowy jako określony tekst.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.TextComponent

  • java.awt.Component

  • java.lang.Object

Przykład TextField

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showTextFieldDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showTextFieldDemo(){
      headerLabel.setText("Control in action: TextField"); 

      Label  namelabel= new Label("User ID: ", Label.RIGHT);
      Label  passwordLabel = new Label("Password: ", Label.CENTER);
      final TextField userText = new TextField(6);
      final TextField passwordText = new TextField(6);
      passwordText.setEchoChar('*');

      Button loginButton = new Button("Login");
   
      loginButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {     
            String data = "Username: " + userText.getText();
            data += ", Password: " + passwordText.getText();
            statusLabel.setText(data);        
         }
      }); 

      controlPanel.add(namelabel);
      controlPanel.add(userText);
      controlPanel.add(passwordLabel);       
      controlPanel.add(passwordText);
      controlPanel.add(loginButton);
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Kontrolka TextArea w AWT udostępnia nam obszar edytora wielowierszowego. Użytkownik może tu wpisać tyle, ile chce. Gdy tekst w polu tekstowym stanie się większy niż widoczny obszar, automatycznie pojawia się pasek przewijania, który pomaga nam przewijać tekst w górę iw dół oraz w prawo i w lewo.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.TextArea klasa:

public class TextArea
   extends TextComponent

Pole

Poniżej znajdują się pola dla java.awt.TextArea klasa:

  • static int SCROLLBARS_BOTH - Twórz i wyświetlaj pionowe i poziome paski przewijania.

  • static int SCROLLBARS_HORIZONTAL_ONLY - Utwórz i wyświetl tylko poziomy pasek przewijania.

  • static int SCROLLBARS_NONE - Nie twórz ani nie wyświetlaj żadnych pasków przewijania dla obszaru tekstowego.

  • static int SCROLLBARS_VERTICAL_ONLY - Utwórz i wyświetl tylko pionowy pasek przewijania.

Konstruktory klas

SN Konstruktor i opis
1

TextArea()

Konstruuje nowy obszar tekstowy z pustym ciągiem jako tekstem.

2

TextArea(int rows, int columns)

Konstruuje nowy obszar tekstowy z określoną liczbą wierszy i kolumn oraz pustym ciągiem jako tekstem.

3

TextArea(String text)

Konstruuje nowy obszar tekstowy z określonym tekstem.

4

TextArea(String text, int rows, int columns)

Konstruuje nowy obszar tekstowy z określonym tekstem i określoną liczbą wierszy i kolumn.

5

TextArea(String text, int rows, int columns, int scrollbars)

Konstruuje nowy obszar tekstowy z określonym tekstem oraz z określonymi wierszami, kolumnami i paskiem przewijania.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Tworzy element równorzędny TextArea.

2

void append(String str)

Dołącza podany tekst do bieżącego tekstu w obszarze tekstowym.

3

void appendText(String str)

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez append (String).

4

AccessibleContext getAccessibleContext()

Zwraca AccessibleContext skojarzony z tym TextArea.

5

int getColumns()

Zwraca liczbę kolumn w tym obszarze tekstowym.

6

Dimension getMinimumSize()

Określa minimalny rozmiar tego obszaru tekstowego.

7

Dimension getMinimumSize(int rows, int columns)

Określa minimalny rozmiar obszaru tekstowego z określoną liczbą wierszy i kolumn.

8

Dimension getPreferredSize()

Określa preferowany rozmiar tego obszaru tekstowego.

9

Dimension getPreferredSize(int rows, int columns)

Określa preferowany rozmiar obszaru tekstowego z określoną liczbą wierszy i kolumn.

10

int getRows()

Zwraca liczbę wierszy w obszarze tekstowym.

11

int getScrollbarVisibility()

Zwraca wyliczoną wartość wskazującą, które paski przewijania są używane w obszarze tekstowym.

12

void insert(String str, int pos)

Wstawia określony tekst w określonym miejscu w tym obszarze tekstowym.

13

void insertText(String str, int pos)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez insert (String, int).

14

Dimension minimumSize()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getMinimumSize ().

15

Dimension minimumSize(int rows, int columns)

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez getMinimumSize (int, int).

16

protected String paramString()

Zwraca ciąg reprezentujący stan tego TextArea.

17

Dimension preferredSize()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getPreferredSize ().

18

Dimension preferredSize(int rows, int columns)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getPreferredSize (int, int).

19

void replaceRange(String str, int start, int end)

Zastępuje tekst między wskazanymi pozycjami początkowymi i końcowymi określonym tekstem zastępczym.

20

void replaceText(String str, int start, int end)

Przestarzałe. Od wersji 1.1 JDK zastąpione przez replaceRange (String, int, int).

21

void setColumns(int columns)

Ustawia liczbę kolumn dla tego obszaru tekstowego.

22

void setRows(int rows)

Ustawia liczbę wierszy dla tego obszaru tekstowego.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.TextComponent

  • java.awt.Component

  • java.lang.Object

Przykład TextArea

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showTextAreaDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showTextAreaDemo(){
      headerLabel.setText("Control in action: TextArea"); 

      Label  commentlabel= new Label("Comments: ", Label.RIGHT);

      final TextArea commentTextArea = new TextArea("This is a AWT tutorial "
      +"to make GUI application in Java.",5,30);

      Button showButton = new Button("Show");

      showButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {     
            statusLabel.setText( commentTextArea.getText());        
         }
      }); 

      controlPanel.add(commentlabel);
      controlPanel.add(commentTextArea);        
      controlPanel.add(showButton);
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Kontrolka wyboru służy do wyświetlania wyskakującego menu opcji. Wybrany wybór jest wyświetlany w górnej części menu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Choice klasa:

public class Choice
   extends Component
      implements ItemSelectable, Accessible

Konstruktory klas

SN Konstruktor i opis
1

Choice() ()

Tworzy nowe menu wyboru.

Metody klasowe

SN Metoda i opis
1

void add(String item)

Dodaje element do tego menu wyboru.

2

void addItem(String item)

Przestarzałe od platformy Java 2 v1.1.

3

void addItemListener(ItemListener l)

Dodaje określony odbiornik elementów, aby otrzymywać zdarzenia elementów z tego menu wyboru.

4

void addNotify()

Tworzy rówieśnika z Choice.

5

int countItems()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getItemCount ().

6

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym wyborem.

7

String getItem(int index)

Pobiera ciąg o określonym indeksie w tym menu wyboru.

8

int getItemCount()

Zwraca liczbę elementów w tym menu Wybór.

9

ItemListener[] getItemListeners()

Zwraca tablicę wszystkich detektorów pozycji zarejestrowanych dla tego wyboru.

10

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym wyborze.

11

int getSelectedIndex()

Zwraca indeks aktualnie wybranej pozycji.

12

String getSelectedItem()

Pobiera reprezentację bieżącego wyboru jako ciąg.

13

Object[] getSelectedObjects()

Zwraca tablicę (długość 1) zawierającą aktualnie wybrany element.

14

void insert(String item, int index)

Wstawia element do tego wyboru w określonej pozycji.

15

protected String paramString()

Zwraca ciąg reprezentujący stan tego menu Wybór.

16

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia dotyczące tego wyboru.

17

protected void processItemEvent(ItemEvent e)

Przetwarza zdarzenia elementu występujące w tym menu Wybór, wysyłając je do dowolnych zarejestrowanych obiektów ItemListener.

18

void remove(int position)

Usuwa element z menu wyboru w określonej pozycji.

19

void remove(String item)

Usuwa pierwsze wystąpienie elementu z menu Wybór.

20

void removeAll()

Usuwa wszystkie pozycje z menu wyboru.

21

void removeItemListener(ItemListener l)

Usuwa określony odbiornik elementów, aby nie odbierał już zdarzeń elementu z tego menu wyboru.

22

void select(int pos)

Ustawia wybraną pozycję w tym menu wyboru jako pozycję na określonej pozycji.

23

void select(String str)

Ustawia wybrany element w tym menu Wybór jako element, którego nazwa jest równa określonemu ciągowi.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład wyboru

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showChoiceDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showChoiceDemo(){                                       

      headerLabel.setText("Control in action: Choice"); 
      final Choice fruitChoice = new Choice();

      fruitChoice.add("Apple");
      fruitChoice.add("Grapes");
      fruitChoice.add("Mango");
      fruitChoice.add("Peer");

      Button showButton = new Button("Show");

      showButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {     
            String data = "Fruit Selected: " 
            + fruitChoice.getItem(fruitChoice.getSelectedIndex());
            statusLabel.setText(data);
         }
      }); 

      controlPanel.add(fruitChoice);
      controlPanel.add(showButton);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Formant Canvas reprezentuje prostokątny obszar, w którym aplikacja może coś narysować lub może otrzymywać dane wejściowe utworzone przez użytkownika.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Canvas klasa:

public class Canvas
   extends Component
      implements Accessible

Konstruktory klas

SN Konstruktor i opis
1

Canvas()

Konstruuje nowe płótno.

2

Canvas(GraphicsConfiguration config)

Konstruuje nową kanwę na podstawie obiektu GraphicsConfiguration.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Tworzy równorzędny element płótna.

2

void createBufferStrategy(int numBuffers)

Tworzy nową strategię wielokrotnego buforowania w tym komponencie.

3

void createBufferStrategy(int numBuffers, BufferCapabilities caps)

Tworzy nową strategię wielokrotnego buforowania tego składnika z wymaganymi możliwościami buforowania.

4

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym Canvas.

5

BufferStrategy getBufferStrategy()

Zwraca BufferStrategy używaną przez ten składnik.

6

void paint(Graphics g)

Maluje to płótno.

7

void pdate(Graphics g)

Aktualizuje to płótno.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład płótna

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showCanvasDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showCanvasDemo(){
      headerLabel.setText("Control in action: Canvas"); 

      controlPanel.add(new MyCanvas());
      mainFrame.setVisible(true);  
   } 

   class MyCanvas extends Canvas {

      public MyCanvas () {
         setBackground (Color.GRAY);
         setSize(300, 300);
      }

      public void paint (Graphics g) {
         Graphics2D g2;
         g2 = (Graphics2D) g;
         g2.drawString ("It is a custom canvas area", 70, 70);
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Kontrola obrazu jest nadklasą dla wszystkich klas obrazów reprezentujących obrazy graficzne.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Image klasa:

public abstract class Image
   extends Object

Pole

Poniżej znajdują się pola dla java.awt.Image klasa:

  • protected float accelerationPriority - Priorytet dla przyspieszenia tego obrazu.

  • static int SCALE_AREA_AVERAGING - Użyj algorytmu skalowania obrazu uśredniania obszaru.

  • static int SCALE_DEFAULT - Użyj domyślnego algorytmu skalowania obrazu.

  • static int SCALE_FAST - Wybierz algorytm skalowania obrazu, który daje wyższy priorytet szybkości skalowania niż gładkości skalowanego obrazu.

  • static int SCALE_REPLICATE - Użyj algorytmu skalowania obrazu zawartego w klasie ReplicateScaleFilter.

  • static int SCALE_SMOOTH - Wybierz algorytm skalowania obrazu, który nadaje wyższy priorytet gładkości obrazu niż szybkości skalowania.

  • static Object UndefinedProperty - Obiekt UndefinedProperty powinien zostać zwrócony za każdym razem, gdy zostanie pobrana właściwość, która nie została zdefiniowana dla określonego obrazu.

Konstruktory klas

SN Konstruktor i opis
1

Image()

Metody klasowe

SN Metoda i opis
1

void flush()

Opróżnia wszystkie odtwarzalne zasoby używane przez ten obiekt Image.

2

float getAccelerationPriority()

Zwraca bieżącą wartość wskazówki dotyczącej priorytetu przyspieszenia.

3

ImageCapabilities getCapabilities(GraphicsConfiguration gc)

Zwraca obiekt ImageCapabilities, który można zapytać o możliwości tego Image w określonym GraphicsConfiguration.

4

abstract Graphics getGraphics()

Tworzy kontekst graficzny do rysowania na obrazie poza ekranem.

5

abstract int getHeight(ImageObserver observer)

Określa wysokość obrazu.

6

abstract Object getProperty(String name, ImageObserver observer)

Pobiera właściwość tego obrazu według nazwy.

7

Image getScaledInstance(int width, int height, int hints)

Tworzy przeskalowaną wersję tego obrazu.

8

abstract ImageProducer getSource()

Pobiera obiekt, który tworzy piksele obrazu.

9

abstract int getWidth(ImageObserver observer)

Określa szerokość obrazu.

10

void setAccelerationPriority(float priority)

Ustawia wskazówkę dotyczącą tego obrazu, jak ważne jest przyspieszenie.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład obrazu

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showImageDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showImageDemo(){
      headerLabel.setText("Control in action: Image"); 

      controlPanel.add(new ImageComponent("resources/java.jpg"));
      mainFrame.setVisible(true);  
   }
	
   class ImageComponent extends Component {

      BufferedImage img;

      public void paint(Graphics g) {
         g.drawImage(img, 0, 0, null);
      }

      public ImageComponent(String path) {
         try {
            img = ImageIO.read(new File(path));
         } catch (IOException e) {
            e.printStackTrace();
         }
      }

      public Dimension getPreferredSize() {
         if (img == null) {
            return new Dimension(100,100);
         } else {
            return new Dimension(img.getWidth(), img.getHeight());
         }
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Kontrolka paska przewijania reprezentuje składnik paska przewijania, umożliwiający użytkownikowi wybór z zakresu wartości.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Scrollbar klasa:

public class Scrollbar
   extends Component
      implements Adjustable, Accessible

Pole

Poniżej znajdują się pola dla java.awt.Image klasa:

  • static int HORIZONTAL - stała wskazująca poziomy pasek przewijania.

  • static int VERTICAL - stała wskazująca pionowy pasek przewijania.

Konstruktory klas

SN Konstruktor i opis
1

Scrollbar()

Tworzy nowy pionowy pasek przewijania.

2

Scrollbar(int orientation)

Konstruuje nowy pasek przewijania o określonej orientacji.

3

Scrollbar(int orientation, int value, int visible, int minimum, int maximum)

Konstruuje nowy pasek przewijania z określoną orientacją, wartością początkową, widoczną ilością oraz wartościami minimalną i maksymalną.

Metody klasowe

Pobiera AccessibleContext skojarzony z tym Scrollbar.

Zwraca tablicę wszystkich detektorów regulacji zarejestrowanych na tym pasku przewijania.

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners na tym pasku przewijania.

AccessibleContext getAccessibleContext () AdjustmentListener [] getAdjustmentListeners () <T extends EventListener> T [] getListeners (Class <T> listenerType)
SN Metoda i opis
1

void addAdjustmentListener(AdjustmentListener l)

Dodaje określony detektor dostosowania, aby otrzymywać wystąpienia AdjustmentEvent z tego paska przewijania.

2

void addNotify()

Tworzy równorzędny element paska przewijania.

3

int getBlockIncrement()

Pobiera przyrost bloku tego paska przewijania.

4

int getLineIncrement()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getUnitIncrement ().

5

int getMaximum()

Pobiera maksymalną wartość tego paska przewijania.

6

int getMinimum()

Pobiera minimalną wartość tego paska przewijania.

7

int getOrientation()

Zwraca orientację tego paska przewijania.

8

int getPageIncrement()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getBlockIncrement ().

9

int getUnitIncrement()

Pobiera przyrost jednostki dla tego paska przewijania.

10

int getValue()

Pobiera bieżącą wartość tego paska przewijania.

11

boolean

getValueIsAdjusting ()

Zwraca prawdę, jeśli wartość jest w trakcie zmiany w wyniku działań podejmowanych przez użytkownika.

12

int getVisible()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getVisibleAmount ().

13

int getVisibleAmount()

Pobiera widoczną ilość tego paska przewijania.

14

protected String paramString()

Zwraca ciąg reprezentujący stan tego paska przewijania.

15

protected void processAdjustmentEvent(AdjustmentEvent e)

Przetwarza zdarzenia regulacji występujące na tym pasku przewijania, wysyłając je do dowolnych zarejestrowanych obiektów AdjustmentListener.

16

protected

1

void processEvent (AWTEvent e)

Przetwarza zdarzenia na tym pasku przewijania.

17

void removeAdjustmentListener (AdjustmentListener l)

Usuwa określony detektor dopasowania, dzięki czemu nie otrzymuje już wystąpień zdarzenia AdjustmentEvent z tego paska przewijania.

18

void setBlockIncrement (int v)

Ustawia przyrost bloku dla tego paska przewijania.

19

void setLineIncrement (int v)

Przestarzałe. Od wersji 1.1 JDK zastąpione przez setUnitIncrement (int).

20

void setMaximum (int newMaximum)

Ustawia maksymalną wartość tego paska przewijania.

21

void setMinimum (int newMinimum)

Ustawia minimalną wartość tego paska przewijania.

22

void setOrientation (orientacja int)

Ustawia orientację tego paska przewijania.

23

void setPageIncrement (int v)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez setBlockIncrement ().

24

void setUnitIncrement (int v)

Ustawia przyrost jednostek dla tego paska przewijania.

25

void setValue (int newValue)

Ustawia wartość tego paska przewijania na określoną wartość.

26

void setValueIsAdjusting (boolean b)

Ustawia właściwość valueIsAdjusting.

27

void setValues ​​(wartość int, widoczna int, minimum int, maksimum int)

Ustawia wartości czterech właściwości dla tego paska przewijania: value, visibleAmount, minimum i maximum.

28

void setVisibleAmount (int newAmount)

Ustawia widoczną ilość tego paska przewijania.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Przykład paska przewijania

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showScrollbarDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showScrollbarDemo(){                                       
      headerLabel.setText("Control in action: Scrollbar"); 

      final Scrollbar horizontalScroller = new Scrollbar(Scrollbar.HORIZONTAL);
      final Scrollbar verticalScroller = new Scrollbar();
      verticalScroller.setOrientation(Scrollbar.VERTICAL);
      horizontalScroller.setMaximum (100);
      horizontalScroller.setMinimum (1);
      verticalScroller.setMaximum (100);
      verticalScroller.setMinimum (1);

      horizontalScroller.addAdjustmentListener(new AdjustmentListener() {

         @Override
         public void adjustmentValueChanged(AdjustmentEvent e) {
            statusLabel.setText("Horozontal: "
               +horizontalScroller.getValue() 
               +" ,Vertical: "
               + verticalScroller.getValue());
            }
         });

      verticalScroller.addAdjustmentListener(new AdjustmentListener() {

            @Override
            public void adjustmentValueChanged(AdjustmentEvent e) {
               statusLabel.setText("Horozontal: "
               +horizontalScroller.getValue() 
               +" ,Vertical: "+ verticalScroller.getValue());
            }
         });

      controlPanel.add(horizontalScroller);
      controlPanel.add(verticalScroller);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Kontrolka okna dialogowego reprezentuje okno najwyższego poziomu z tytułem i obramowaniem używanym do przyjmowania danych wejściowych od użytkownika.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Dialog klasa:

public class Dialog
extends Window

Pole

Poniżej znajdują się pola dla java.awt.Image klasa:

  • static Dialog.ModalityType DEFAULT_MODALITY_TYPE - Domyślny typ modalności dla okien dialogowych modalnych.

Konstruktory klas

SN Konstruktor i opis
1

Dialog(Dialog owner)

Konstruuje początkowo niewidoczne, niemodalne okno dialogowe z określonym oknem dialogowym właściciela i pustym tytułem.

2

Dialog(Dialog owner, String title)

Konstruuje początkowo niewidoczne, niemodalne okno dialogowe z określonym oknem dialogowym właściciela i tytułem.

3

Dialog(Dialog owner, String title, boolean modal)

Konstruuje początkowo niewidoczne okno dialogowe z określonym oknem dialogowym właściciela, tytułem i modalnością.

4

Dialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc)

Konstruuje początkowo niewidoczne okno dialogowe z określonym oknem dialogowym właściciela, tytułem, modalnością i GraphicsConfiguration.

5

Dialog(Frame owner)

Konstruuje początkowo niewidoczne, niemodalne okno dialogowe z określoną ramką właściciela i pustym tytułem.

6

Dialog(Frame owner, boolean modal)

Konstruuje początkowo niewidoczne okno dialogowe z określoną ramką właściciela i modalnością oraz pustym tytułem.

7

Dialog(Frame owner, String title)

Tworzy początkowo niewidoczne, niemodalne okno dialogowe z określoną ramką właściciela i tytułem.

8

Dialog(Frame owner, String title, boolean modal)

Konstruuje początkowo niewidoczne okno dialogowe z określoną ramką właściciela, tytułem i modalnością.

9

Dialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc)

Konstruuje początkowo niewidoczne okno dialogowe z określoną ramką właściciela, tytułem, modalnością i GraphicsConfiguration.

10

Dialog(Window owner)

Konstruuje początkowo niewidoczne, niemodalne okno dialogowe z określonym oknem właściciela i pustym tytułem.

11

Dialog(Window owner, Dialog.ModalityType modalityType)

Konstruuje początkowo niewidoczne okno dialogowe z określonym oknem właściciela i modalnością oraz pustym tytułem.

12

Dialog(Window owner, String title)

Tworzy początkowo niewidoczne, niemodalne okno dialogowe z określonym oknem właściciela i tytułem.

13

Dialog(Window owner, String title, Dialog.ModalityType modalityType)

Konstruuje początkowo niewidoczne okno dialogowe z określonym oknem właściciela, tytułem i modalnością.

14

Dialog(Window owner, String title, Dialog.ModalityType modalityType, GraphicsConfiguration gc)

Konstruuje początkowo niewidoczne okno dialogowe z określonym oknem właściciela, tytułem, modalnością i GraphicsConfiguration

Metody klasowe

SN Metoda i opis
1

void addNotify()

Umożliwia wyświetlenie tego okna dialogowego, łącząc go z natywnym zasobem ekranu.

2

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym oknem dialogowym.

3

Dialog.ModalityType getModalityType()

Zwraca typ modalności tego okna dialogowego.

4

String getTitle()

Pobiera tytuł okna dialogowego.

5

void hide()

Przestarzałe. Od wersji 1.5 JDK zastąpione przez setVisible (boolean).

6

boolean isModal()

Wskazuje, czy okno dialogowe jest modalne.

7

boolean isResizable()

Wskazuje, czy użytkownik może zmieniać rozmiar tego okna dialogowego.

8

boolean isUndecorated()

Wskazuje, czy to okno dialogowe nie jest ozdobione.

9

protected String paramString()

Zwraca ciąg znaków reprezentujący stan tego okna dialogowego.

10

void setModal(boolean modal)

Określa, czy to okno dialogowe powinno być modalne.

11

void setModalityType(Dialog.ModalityType type)

Ustawia typ modalności dla tego okna dialogowego.

12

void setResizable(boolean resizable)

Określa, czy użytkownik może zmieniać rozmiar tego okna dialogowego.

13

void setTitle(String title)

Ustawia tytuł okna dialogowego.

14

void setUndecorated(boolean undecorated)

Wyłącza lub włącza dekoracje w tym oknie dialogowym.

15

void setVisible(boolean b)

Pokazuje lub ukrywa to okno dialogowe w zależności od wartości parametru b.

16

void show()

Przestarzałe. Od wersji 1.5 JDK zastąpione przez setVisible (boolean).

17

void toBack()

Jeśli to okno jest widoczne, wysyła to okno do tyłu i może spowodować utratę aktywności lub aktywacji, jeśli jest to aktywne lub aktywne okno.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Window

  • java.awt.Component

  • java.lang.Object

Przykład okna dialogowego

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showDialogDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showDialogDemo(){
      headerLabel.setText("Control in action: Dialog"); 
      Button showAboutDialogButton = new Button("Show About Dialog");
      showAboutDialogButton.addActionListener(new ActionListener() {
	     @Override
         public void actionPerformed(ActionEvent e) {
            AboutDialog aboutDialog = new AboutDialog(mainFrame);
            aboutDialog.setVisible(true);
         }
      });

      controlPanel.add(showAboutDialogButton);
      mainFrame.setVisible(true);  
   }

   class AboutDialog extends Dialog {
      public AboutDialog(Frame parent){
         super(parent, true);         
         setBackground(Color.gray);
         setLayout(new BorderLayout());
         Panel panel = new Panel();
         panel.add(new Button("Close"));
         add("South", panel);
         setSize(200,200);

         addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent windowEvent){
               dispose();
            }
         });
      }

      public boolean action(Event evt, Object arg){
         if(arg.equals("Close")){
            dispose();
            return true;
         }
         return false;
      }

      public void paint(Graphics g){
         g.setColor(Color.white);
         g.drawString("TutorialsPoint.Com", 25,70 );
         g.drawString("Version 1.0", 60, 90);      
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Wprowadzenie

Formant FileDialog reprezentuje okno dialogowe, w którym użytkownik może wybrać plik.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.FileDialog klasa:

public class FileDialog
   extends Dialog

Pole

Poniżej znajdują się pola dla java.awt.Image klasa:

  • static int LOAD - Ta stała wartość wskazuje, że celem okna dialogowego pliku jest zlokalizowanie pliku, z którego ma zostać odczytany.

  • static int SAVE - Ta stała wartość wskazuje, że celem okna dialogowego pliku jest zlokalizowanie pliku do zapisu.

Konstruktory klas

SN Konstruktor i opis
1

FileDialog(Dialog parent)

Tworzy okno dialogowe pliku do wczytania pliku.

2

FileDialog(Dialog parent, String title)

Tworzy okno dialogowe pliku z określonym tytułem do wczytywania pliku.

3

FileDialog(Dialog parent, String title, int mode)

Tworzy okno dialogowe pliku z określonym tytułem do wczytywania lub zapisywania pliku.

4

FileDialog(Frame parent)

Tworzy okno dialogowe pliku do wczytania pliku.

5

FileDialog(Frame parent, String title)

Tworzy okno dialogowe pliku z określonym tytułem do wczytywania pliku.

6

FileDialog(Frame parent, String title, int mode)

Tworzy okno dialogowe pliku z określonym tytułem do wczytywania lub zapisywania pliku.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Tworzy peer okna dialogowego pliku.

2

String getDirectory()

Pobiera katalog z tego okna dialogowego pliku.

3

String getFile()

Pobiera wybrany plik z tego okna dialogowego pliku.

4

FilenameFilter getFilenameFilter()

Określa filtr nazw plików w tym oknie dialogowym pliku.

5

int getMode()

Wskazuje, czy to okno dialogowe pliku służy do wczytywania z pliku, czy do zapisywania do pliku.

6

protected String paramString()

Zwraca ciąg reprezentujący stan tego okna FileDialog.

7

void setDirectory(String dir)

Ustawia katalog tego okna dialogowego pliku na określony katalog.

8

void setFile(String file)

Ustawia wybrany plik w tym oknie dialogowym pliku na określony plik.

9

void setFilenameFilter(FilenameFilter filter)

Ustawia filtr nazwy pliku dla tego okna dialogowego pliku na określony filtr.

10

void setMode(int mode)

Ustawia tryb okna dialogowego pliku.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Dialog

  • java.awt.Window

  • java.awt.Component

  • java.lang.Object

Przykład FileDialog

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showFileDialogDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showFileDialogDemo(){
      headerLabel.setText("Control in action: FileDialog"); 

      final FileDialog fileDialog = new FileDialog(mainFrame,"Select file");
      Button showFileDialogButton = new Button("Open File");
      showFileDialogButton.addActionListener(new ActionListener() {
         @Override
         public void actionPerformed(ActionEvent e) {
            fileDialog.setVisible(true);
            statusLabel.setText("File Selected :" 
            + fileDialog.getDirectory() + fileDialog.getFile());
         }
      });

      controlPanel.add(showFileDialogButton);
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Co to jest wydarzenie?

Zmiana stanu obiektu nazywana jest zdarzeniem, tj. Zdarzenie opisuje zmianę stanu źródła. Zdarzenia są generowane w wyniku interakcji użytkownika z elementami graficznego interfejsu użytkownika. Na przykład kliknięcie przycisku, poruszenie myszą, wpisanie znaku z klawiatury, wybranie pozycji z listy, przewijanie strony to czynności, które powodują wystąpienie zdarzenia.

Rodzaje wydarzeń

Zdarzenia można ogólnie podzielić na dwie kategorie:

  • Foreground Events- Zdarzenia wymagające bezpośredniej interakcji użytkownika, generowane jako konsekwencje interakcji osoby z elementami graficznymi w graficznym interfejsie użytkownika. Na przykład kliknięcie przycisku, poruszenie myszą, wpisanie znaku z klawiatury, wybranie pozycji z listy, przewijanie strony itp.

  • Background Events- Te zdarzenia, które wymagają interakcji użytkownika końcowego, nazywane są zdarzeniami w tle. Przerwania systemu operacyjnego, awaria sprzętu lub oprogramowania, upływ czasu, zakończenie operacji są przykładem zdarzeń w tle.

Co to jest obsługa zdarzeń?

Obsługa zdarzeń to mechanizm, który kontroluje zdarzenie i decyduje, co powinno się stać, jeśli wystąpi zdarzenie. Ten mechanizm ma kod, który jest znany jako moduł obsługi zdarzeń, który jest wykonywany, gdy wystąpi zdarzenie. Java używa modelu zdarzeń delegowania do obsługi zdarzeń. Ten model definiuje standardowy mechanizm generowania i obsługi zdarzeń. Krótkie wprowadzenie do tego modelu.

Model delegacji ma następujących kluczowych uczestników, a mianowicie:

  • Source- Źródłem jest obiekt, na którym zachodzi zdarzenie. Źródło jest odpowiedzialne za dostarczenie informacji o wystąpieniu zdarzenia do jego obsługi. Java dostarcza podobnie jak klasy dla obiektu źródłowego.

  • Listener- Jest również znany jako moduł obsługi zdarzeń, który jest odpowiedzialny za generowanie odpowiedzi na zdarzenie. Z punktu widzenia implementacji Java, słuchacz jest również obiektem. Odbiornik czeka, aż otrzyma zdarzenie. Po odebraniu zdarzenia odbiornik przetwarza je, a następnie wraca.

Zaletą tego podejścia jest to, że logika interfejsu użytkownika jest całkowicie oddzielona od logiki, która generuje zdarzenie. Element interfejsu użytkownika może delegować przetwarzanie zdarzenia do oddzielnego fragmentu kodu. W tym modelu Listener musi być zarejestrowany w obiekcie źródłowym, aby odbiornik mógł otrzymać powiadomienie o zdarzeniu. Jest to skuteczny sposób obsługi zdarzenia, ponieważ powiadomienia o zdarzeniach są wysyłane tylko do tych słuchaczy, którzy chcą je otrzymywać.

Kroki związane z obsługą zdarzenia

  • Użytkownik klika przycisk i generowane jest zdarzenie.

  • Teraz obiekt danej klasy zdarzenia jest tworzony automatycznie, a informacje o źródle i zdarzeniu są wypełniane w tym samym obiekcie.

  • Obiekt zdarzenia jest przekazywany do metody zarejestrowanej klasy detektora.

  • metoda jest teraz wykonywana i zwraca.

Punkty, o których należy pamiętać o słuchaczu

  • Aby zaprojektować klasę listenera, musimy opracować interfejsy listenera, które przewidują kilka publicznych abstrakcyjnych metod wywołania zwrotnego, które muszą być implementowane przez klasę listenera.

  • Jeśli nie zaimplementujesz any if z predefiniowanymi interfejsami, twoja klasa nie będzie mogła działać jako klasa nasłuchująca dla obiektu źródłowego.

Metody wywołania zwrotnego

Są to metody, które są dostarczane przez dostawcę interfejsu API i są definiowane przez programistę aplikacji i wywoływane przez dewelopera aplikacji. Tutaj metody wywołania zwrotnego reprezentują metodę zdarzenia. W odpowiedzi na zdarzenie java jre uruchomi metodę callback. Wszystkie takie metody wywołania zwrotnego są dostępne w interfejsach nasłuchujących.

Jeśli komponent chce, aby jakiś słuchacz nasłuchiwał jego zdarzeń, źródło musi zarejestrować się w odbiorniku.

Przykład obsługi zdarzeń

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showEventDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showEventDemo(){
      headerLabel.setText("Control in action: Button"); 

      Button okButton = new Button("OK");
      Button submitButton = new Button("Submit");
      Button cancelButton = new Button("Cancel");

      okButton.setActionCommand("OK");
      submitButton.setActionCommand("Submit");
      cancelButton.setActionCommand("Cancel");

      okButton.addActionListener(new ButtonClickListener()); 
      submitButton.addActionListener(new ButtonClickListener()); 
      cancelButton.addActionListener(new ButtonClickListener()); 

      controlPanel.add(okButton);
      controlPanel.add(submitButton);
      controlPanel.add(cancelButton);       

      mainFrame.setVisible(true);  
   }

   private class ButtonClickListener implements ActionListener{
      public void actionPerformed(ActionEvent e) {
         String command = e.getActionCommand();  
         if( command.equals( "OK" ))  {
            statusLabel.setText("Ok Button clicked.");
         }
         else if( command.equals( "Submit" ) )  {
            statusLabel.setText("Submit Button clicked."); 
         }
         else  {
            statusLabel.setText("Cancel Button clicked.");
         }  	
      }		
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtControlDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

Sprawdź następujące dane wyjściowe

Zdarzenie reprezentują klasy Event. Java udostępnia nam różne klasy Event, ale omówimy te, które są częściej używane.

EventObject, klasa

Jest to klasa główna, z której mają pochodzić wszystkie obiekty stanu zdarzenia. Wszystkie zdarzenia są konstruowane w odniesieniu do obiektu, plikusource, to jest logicznie uważane za przedmiot, na którym dane Zdarzenie pierwotnie miało miejsce. Ta klasa jest zdefiniowana w pakiecie java.util.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.util.EventObject klasa:

public class EventObject
   extends Object
      implements Serializable

Pole

Poniżej znajdują się pola dla java.util.EventObject klasa:

  • protected Object source - obiekt, na którym zdarzenie pierwotnie miało miejsce.

Konstruktory klas

SN Konstruktor i opis
1

EventObject(Object source)

Konstruuje prototypowe wydarzenie.

Metody klasowe

SN Metoda i opis
1

Object getSource()

Obiekt, na którym zdarzenie pierwotnie miało miejsce.

2

String toString()

Zwraca ciąg reprezentujący ten EventObject.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Klasy zawodów AWT:

Poniżej znajduje się lista najczęściej używanych klas zdarzeń.

Jest to klasa zdarzenia głównego dla wszystkich zdarzeń AWT. Ta klasa i jej podklasy zastępują oryginalną klasę java.awt.Event. Ta klasa jest zdefiniowana w pakiecie java.awt. Ta klasa ma metodę o nazwie getID (), której można użyć do określenia typu zdarzenia.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.AWTEvent klasa:

public class AWTEvent
   extends EventObject

Pole

Poniżej znajdują się pola dla java.awt.AWTEvent klasa:

  • static int ACTION_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla zdarzeń akcji.

  • static long ACTION_EVENT_MASK - Maska zdarzeń do wybierania zdarzeń akcji.

  • static long ADJUSTMENT_EVENT_MASK - Maska zdarzeń do wybierania zdarzeń regulacji.

  • static long COMPONENT_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń składowych.

  • protected boolean consumed - Kontroluje, czy zdarzenie jest wysyłane z powrotem do peera po przetworzeniu go przez źródło - false oznacza, że ​​zostało wysłane do peera; prawda oznacza, że ​​nie.

  • static long CONTAINER_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń kontenera.

  • static long FOCUS_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń fokusu.

  • static long HIERARCHY_BOUNDS_EVENT_MASK - Maska zdarzenia służąca do wybierania zdarzeń ograniczających hierarchię.

  • static long HIERARCHY_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń w hierarchii.

  • protected int id - Identyfikator wydarzenia.

  • static long INPUT_METHOD_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń metody wprowadzania.

  • static long INVOCATION_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń wywołania.

  • static long ITEM_EVENT_MASK - Maska zdarzeń do wybierania zdarzeń pozycji.

  • static long KEY_EVENT_MASK - Maska zdarzenia do wybierania kluczowych wydarzeń.

  • static long MOUSE_EVENT_MASK - Maska zdarzeń do wybierania zdarzeń myszy.

  • static long MOUSE_MOTION_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń ruchu myszy.

  • static long MOUSE_WHEEL_EVENT_MASK - Maska zdarzeń do wybierania zdarzeń kółkiem myszy.

  • static long PAINT_EVENT_MASK - Maska zdarzeń do wybierania wydarzeń związanych z farbą.

  • static int RESERVED_ID_MAX - Maksymalna wartość zarezerwowanych identyfikatorów zdarzeń AWT.

  • static long TEXT_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń tekstowych.

  • static long WINDOW_EVENT_MASK - Maska zdarzeń do wybierania zdarzeń okien.

  • static long WINDOW_FOCUS_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń fokusa okna.

  • static long WINDOW_STATE_EVENT_MASK - Maska zdarzenia do wybierania zdarzeń stanu okna.

Konstruktory klas

SN Konstruktor i opis
1

AWTEvent(Event event)

Konstruuje obiekt AWTEvent z parametrów zdarzenia w stylu 1.0.

2

AWTEvent(java.lang.Object source, int id)

Konstruuje obiekt AWTEvent z określonym obiektem źródłowym i typem.

Metody klasowe

SN Metoda i opis
1

protected void consume()

Zużywa to wydarzenie, jeśli to wydarzenie może zostać skonsumowane.

2

int getID()

Zwraca typ zdarzenia.

3

protected boolean isConsumed()

Zwraca informację, czy to zdarzenie zostało zużyte.

4

java.lang.String paramString()

Zwraca ciąg znaków reprezentujący stan tego zdarzenia.

5

void setSource(java.lang.Object newSource)

Przekierowuje zdarzenie do nowego źródła.

6

java.lang.String toString()

Zwraca reprezentację String tego obiektu.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.util.EventObject

  • java.lang.Object

Ta klasa jest zdefiniowana w pakiecie java.awt.event. Zdarzenie ActionEvent jest generowane po kliknięciu przycisku lub dwukrotnym kliknięciu elementu listy.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.ActionEvent klasa:

public class ActionEvent
   extends AWTEvent

Pole

Poniżej znajdują się pola dla java.awt.event.ActionEvent klasa:

  • static int ACTION_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla zdarzeń akcji.

  • static int ACTION_LAST - ostatnia liczba w zakresie identyfikatorów używanych dla zdarzeń akcji.

  • static int ACTION_PERFORMED - Ten identyfikator zdarzenia wskazuje, że miało miejsce znaczące działanie.

  • static int ALT_MASK - modyfikator alt.

  • static int CTRL_MASK - Modyfikator sterowania.

  • static int META_MASK - Modyfikator meta.

  • static int SHIFT_MASK - Modyfikator zmiany biegów.

Konstruktory klas

SN Konstruktor i opis
1

ActionEvent(java.lang.Object source, int id, java.lang.String command)

Konstruuje obiekt ActionEvent.

2

ActionEvent(java.lang.Object source, int id, java.lang.String command, int modifiers)

Konstruuje obiekt ActionEvent z klawiszami modyfikującymi.

3

ActionEvent(java.lang.Object source, int id, java.lang.String command, long when, int modifiers)

Konstruuje obiekt ActionEvent z określonymi kluczami modyfikującymi i sygnaturą czasową.

Metody klasowe

SN Metoda i opis
1

java.lang.String getActionCommand()

Zwraca ciąg polecenia skojarzony z tą akcją.

2

int getModifiers()

Zwraca klawisze modyfikujące przytrzymane podczas tego zdarzenia akcji.

3

long getWhen()

Zwraca sygnaturę czasową, kiedy wystąpiło to zdarzenie.

4

java.lang.String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie akcji.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa InputEvent jest klasą zdarzenia głównego dla wszystkich zdarzeń wejściowych na poziomie komponentu. Zdarzenia wejściowe są dostarczane do słuchaczy, zanim zostaną normalnie przetworzone przez źródło, z którego pochodzą. Dzięki temu detektory i podklasy komponentów mogą „zużywać” zdarzenie, aby źródło nie przetworzyło ich w domyślny sposób. Na przykład użycie zdarzeń mousePressed w składniku Button uniemożliwi aktywację przycisku.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.InputEvent klasa:

public abstract class InputEvent
   extends ComponentEvent

Pole

Poniżej znajdują się pola dla java.awt.event.InputEvent klasa:

  • static int ALT_DOWN_MASK - Rozszerzona stała modyfikatora klawisza Alt.

  • static int ALT_GRAPH_DOWN_MASK - Rozszerzona stała modyfikatora klawisza AltGraph.

  • static int ALT_GRAPH_MASK - Stała modyfikująca klawisz AltGraph.

  • static int ALT_MASK - Stała modyfikująca klawisz Alt.

  • static int BUTTON1_DOWN_MASK - Stała rozszerzonego modyfikatora Mouse Button1.

  • static int BUTTON1_MASK - Stała modyfikatora Mouse Button1.

  • static int BUTTON2_DOWN_MASK - Stała rozszerzonego modyfikatora Mouse Button2.

  • static int BUTTON2_MASK - Stała modyfikatora Mouse Button2.

  • static int BUTTON3_DOWN_MASK - Stała rozszerzonego modyfikatora Mouse Button3.

  • static int BUTTON3_MASK - stała modyfikatora Mouse Button3.

  • static int CTRL_DOWN_MASK - Rozszerzona stała modyfikatora klawisza Control.

  • static int CTRL_MASK - Stała modyfikatora klawisza Control.

  • static int META_DOWN_MASK - Stała modyfikatora rozszerzona klawisza Meta.

  • static int META_MASK - Stała modyfikująca klawisz Meta.

  • static int SHIFT_DOWN_MASK - Rozszerzona stała modyfikatora klawisza Shift.

  • static int SHIFT_MASK - Stała modyfikująca klawisz Shift.

Metody klasowe

SN Metoda i opis
1

void consume()

Zużywa to zdarzenie, aby nie było przetwarzane w sposób domyślny przez źródło, które je zainicjowało.

2

int getModifiers()

Zwraca maskę modyfikatora dla tego zdarzenia.

3

int getModifiersEx()

Zwraca rozszerzoną maskę modyfikatora dla tego zdarzenia.

4

static String getModifiersExText(int modifiers)

Zwraca ciąg opisujący rozszerzone klawisze modyfikujące i przyciski myszy, takie jak „Shift”, „Button1” lub „Ctrl + Shift”.

5

long getWhen()

Zwraca sygnaturę czasową, kiedy wystąpiło to zdarzenie.

6

boolean isAltDown()

Zwraca informację, czy modyfikator Alt jest wyłączony dla tego zdarzenia.

7

boolean isAltGraphDown()

Zwraca informację, czy modyfikator AltGraph jest wyłączony dla tego zdarzenia.

8

boolean isConsumed()

Zwraca informację, czy to zdarzenie zostało zużyte, czy nie.

9

boolean isControlDown()

Zwraca informację, czy modyfikator Control jest wyłączony dla tego zdarzenia.

10

boolean isMetaDown()

Zwraca informację, czy modyfikator Meta jest wyłączony dla tego zdarzenia.

11

boolean isShiftDown()

Zwraca informację, czy modyfikator Shift jest wyłączony dla tego zdarzenia.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.event.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Po wprowadzeniu znaku generowane jest zdarzenie Key. Istnieją trzy typy zdarzeń kluczowych, które są reprezentowane przez stałe całkowite. Te kluczowe wydarzenia są następujące

  • KEY_PRESSED

  • KEY_RELASED

  • KEY_TYPED

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.KeyEvent klasa:

public class KeyEvent
   extends InputEvent

Pole

Poniżej znajdują się pola dla java.awt.InputEvent klasa:

  • static char CHAR_UNDEFINED Zdarzenia --KEY_PRESSED i KEY_RELEASED, które nie są mapowane na prawidłowy znak Unicode, używają tego dla wartości keyChar.

  • static int KEY_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla kluczowych zdarzeń.

  • static int KEY_LAST - ostatnia liczba w zakresie identyfikatorów używanych dla kluczowych zdarzeń.

  • static int KEY_LOCATION_LEFT - stała wskazująca, że ​​naciśnięty lub zwolniony klawisz znajduje się w lewym położeniu klawisza (istnieje więcej niż jedno możliwe położenie tego klawisza).

  • static int KEY_LOCATION_NUMPAD - stała wskazująca, że ​​zdarzenie związane z klawiszem zostało zapoczątkowane na klawiaturze numerycznej lub za pomocą klawisza wirtualnego odpowiadającego klawiaturze numerycznej.

  • static int KEY_LOCATION_RIGHT - Stała wskazująca, że ​​naciśnięty lub zwolniony klawisz znajduje się we właściwej lokalizacji klawisza (istnieje więcej niż jedna możliwa lokalizacja tego klawisza).

  • static int KEY_LOCATION_STANDARD - stała wskazująca, że ​​naciśnięty lub zwolniony klawisz nie jest rozróżniany jako lewa lub prawa wersja klawisza i nie pochodzi z klawiatury numerycznej (lub nie pochodzi od klawisza wirtualnego odpowiadającego klawiaturze numerycznej).

  • static int KEY_LOCATION_UNKNOWN - Stała wskazująca, że ​​keyLocation jest nieokreślony lub nieistotny.

  • static int KEY_PRESSED - Zdarzenie „naciśnięto klawisz”.

  • static int KEY_RELEASED - Zdarzenie „zwolnienie klucza”.

  • static int KEY_TYPED - Zdarzenie „wpisano klucz”.

  • static int VK_0 --VK_0 do VK_9 są takie same jak ASCII od „0” do „9” (0x30 - 0x39)

  • static int VK_1

  • static int VK_2

  • static int VK_3

  • static int VK_4

  • static int VK_5

  • static int VK_6

  • static int VK_7

  • static int VK_8

  • static int VK_9

  • static int VK_A - od VK_A do VK_Z są takie same jak ASCII od „A” do „Z” (0x41 - 0x5A)

  • static int VK_ACCEPT - stała dla klawisza funkcji Akceptuj lub Zatwierdź.

  • static int VK_ADD

  • static int VK_AGAIN

  • static int VK_ALL_CANDIDATES - stała dla klawisza funkcyjnego Wszyscy kandydaci.

  • static int VK_ALPHANUMERIC - stała dla alfanumerycznego klawisza funkcyjnego.

  • static int VK_ALT

  • static int VK_ALT_GRAPH - stała dla klawisza funkcyjnego AltGraph.

  • static int VK_AMPERSAND

  • static int VK_ASTERISK

  • static int VK_AT --stała dla klucza „@”.

  • static int VK_B

  • static int VK_BACK_QUOTE

  • static int VK_BACK_SLASH - Stała dla lewego ukośnika, „\”

  • static int VK_BACK_SPACE

  • static int VK_BEGIN - stała dla klawisza Begin.

  • static int VK_BRACELEFT

  • static int VK_BRACERIGHT

  • static int VK_C

  • static int VK_CANCEL

  • static int VK_CAPS_LOCK

  • static int VK_CIRCUMFLEX - stała dla klawisza „^”.

  • static int VK_CLEAR

  • static int VK_CLOSE_BRACKET - Stała dla klawisza zamykającego nawiasu, „]”

  • static int VK_CODE_INPUT - stała dla klawisza funkcyjnego Code Input.

  • static int VK_COLON - Stała dla klawisza „:”.

  • static int VK_COMMA - Stała dla klucza przecinka, ","

  • static int VK_COMPOSE - stała dla klawisza funkcji Utwórz.

  • static int VK_CONTEXT_MENU - stała dla klawisza menu kontekstowego systemu Microsoft Windows.

  • static int VK_CONTROL

  • static int VK_CONVERT - Stała dla klawisza funkcyjnego Convert.

  • static int VK_COPY

  • static int VK_CUT

  • static int VK_D

  • static int VK_DEAD_ABOVEDOT

  • static int VK_DEAD_ABOVERING

  • static int VK_DEAD_ACUTE

  • static int VK_DEAD_BREVE

  • static int VK_DEAD_CARON

  • static int VK_DEAD_CEDILLA

  • static int VK_DEAD_CIRCUMFLEX

  • static int VK_DEAD_DIAERESIS

  • static int VK_DEAD_DOUBLEACUTE

  • static int VK_DEAD_GRAVE

  • static int VK_DEAD_IOTA

  • static int VK_DEAD_MACRON

  • static int VK_DEAD_OGONEK

  • static int VK_DEAD_SEMIVOICED_SOUND

  • static int VK_DEAD_TILDE

  • static int VK_DEAD_VOICED_SOUND

  • static int VK_DECIMAL

  • static int VK_DELETE

  • static int VK_DIVIDE

  • static int VK_DOLLAR - Stała dla klucza „$”.

  • static int VK_DOWN - Stała dla klawisza strzałki w dół, który nie jest klawiszem numerycznym.

  • static int VK_E

  • static int VK_END

  • static int VK_ENTER

  • static int VK_EQUALS - Stała dla klucza równości, „=”

  • static int VK_ESCAPE

  • static int VK_EURO_SIGN - stała dla klucza znaku waluty euro.

  • static int VK_EXCLAMATION_MARK - Stała dla „!” klucz.

  • static int VK_F

  • static int VK_F1 - stała dla klawisza funkcyjnego F1.

  • static int VK_F10 - Stała dla klawisza funkcyjnego F10.

  • static int VK_F11 - Stała dla klawisza funkcyjnego F11.

  • static int VK_F12 - Stała dla klawisza funkcyjnego F12.

  • static int VK_F13 - Stała dla klawisza funkcyjnego F13.

  • static int VK_F14 - Stała dla klawisza funkcyjnego F14.

  • static int VK_F15 - Stała dla klawisza funkcyjnego F15.

  • static int VK_F16 - Stała dla klawisza funkcyjnego F16.

  • static int VK_F17 - Stała dla klawisza funkcyjnego F17.

  • static int VK_F18 - Stała dla klawisza funkcyjnego F18.

  • static int VK_F19 - Stała dla klawisza funkcyjnego F19.

  • static int VK_F2 - Stała dla klawisza funkcyjnego F2.

  • static int VK_F20 - Stała dla klawisza funkcyjnego F20.

  • static int VK_F21 - Stała dla klawisza funkcyjnego F21.

  • static int VK_F22 - Stała dla klawisza funkcyjnego F22.

  • static int VK_F23 - Stała dla klawisza funkcyjnego F23.

  • static int VK_F24 - Stała dla klawisza funkcyjnego F24.

  • static int VK_F3 - Stała dla klawisza funkcyjnego F3.

  • static int VK_F4 - Stała dla klawisza funkcyjnego F4.

  • static int VK_F5 - Stała dla klawisza funkcyjnego F5.

  • static int VK_F6 - Stała dla klawisza funkcyjnego F6.

  • static int VK_F7 - Stała dla klawisza funkcyjnego F7.

  • static int VK_F8 - Stała dla klawisza funkcyjnego F8.

  • static int VK_F9 - Stała dla klawisza funkcyjnego F9.

  • static int VK_FINAL

  • static int VK_FIND

  • static int VK_FULL_WIDTH - stała dla klawisza funkcyjnego Znaki o pełnej szerokości.

  • static int VK_G

  • static int VK_GREATER

  • static int VK_H

  • static int VK_HALF_WIDTH - stała dla klawisza funkcyjnego Znaki o połowie szerokości.

  • static int VK_HELP

  • static int VK_HIRAGANA - stała dla klawisza funkcyjnego Hiragana.

  • static int VK_HOME

  • static int VK_I

  • static int VK_INPUT_METHOD_ON_OFF - Stała dla klawisza włączania / wyłączania metody wprowadzania.

  • static int VK_INSERT

  • static int VK_INVERTED_EXCLAMATION_MARK - stała dla klawisza odwróconego wykrzyknika.

  • static int VK_J

  • static int VK_JAPANESE_HIRAGANA - stała dla klawisza funkcyjnego Japanese-Hiragana.

  • static int VK_JAPANESE_KATAKANA - stała dla klawisza funkcyjnego Japanese-Katakana.

  • static int VK_JAPANESE_ROMAN - stała dla japońsko-rzymskiego klawisza funkcyjnego.

  • static int VK_K

  • static int VK_KANA

  • static int VK_KANA_LOCK - Stała dla blokującego klawisza funkcyjnego Kana.

  • static int VK_KANJI

  • static int VK_KATAKANA - stała dla klawisza funkcyjnego Katakana.

  • static int VK_KP_DOWN - Stała dla klawisza strzałki w dół na klawiaturze numerycznej.

  • static int VK_KP_LEFT - stała dla klawisza strzałki w lewo na klawiaturze numerycznej.

  • static int VK_KP_RIGHT - stała dla klawisza strzałki w prawo na klawiaturze numerycznej.

  • static int VK_KP_UP - stała dla klawisza strzałki w górę na klawiaturze numerycznej.

  • static int VK_L

  • static int VK_LEFT - stała dla klawisza strzałki w lewo, który nie jest klawiszem numerycznym.

  • static int VK_LEFT_PARENTHESIS - stała dla klawisza „(”.

  • static int VK_LESS

  • static int VK_M

  • static int VK_META

  • static int VK_MINUS - Stała dla klawisza minus, „-”

  • static int VK_MODECHANGE

  • static int VK_MULTIPLY

  • static int VK_N

  • static int VK_NONCONVERT - stała dla klawisza funkcyjnego Nie konwertuj.

  • static int VK_NUM_LOCK

  • static int VK_NUMBER_SIGN - Stała dla klawisza „#”.

  • static int VK_NUMPAD0

  • static int VK_NUMPAD1

  • static int VK_NUMPAD2

  • static int VK_NUMPAD3

  • static int VK_NUMPAD4

  • static int VK_NUMPAD5

  • static int VK_NUMPAD6

  • static int VK_NUMPAD7

  • static int VK_NUMPAD8

  • static int VK_NUMPAD9

  • static int VK_O

  • static int VK_OPEN_BRACKET - Stała dla klucza otwartego nawiasu, „[”

  • static int VK_P

  • static int VK_PAGE_DOWN

  • static int VK_PAGE_UP

  • static int VK_PASTE

  • static int VK_PAUSE

  • static int VK_PERIOD - Stała dla klucza okresu, „.”

  • static int VK_PLUS - Stała dla klawisza „+”.

  • static int VK_PREVIOUS_CANDIDATE - Stała dla klawisza funkcyjnego Poprzedni kandydat.

  • static int VK_PRINTSCREEN

  • static int VK_PROPS

  • static int VK_Q

  • static int VK_QUOTE

  • static int VK_QUOTEDBL

  • static int VK_R

  • static int VK_RIGHT - Stała dla klawisza strzałki w prawo bez klawiatury numerycznej.

  • static int VK_RIGHT_PARENTHESIS - Stała dla klawisza „)”.

  • static int VK_ROMAN_CHARACTERS - stała dla klawisza funkcyjnego ze znakami rzymskimi.

  • static int VK_S

  • static int VK_SCROLL_LOCK

  • static int VK_SEMICOLON - Stała dla klucza średnika, ";"

  • static int VK_SEPARATER - Ta stała jest przestarzała i jest uwzględniana tylko w celu zapewnienia kompatybilności wstecznej.

  • static int VK_SEPARATOR - Stała dla klawisza Numpad Separator.

  • static int VK_SHIFT

  • static int VK_SLASH - Stała dla klawisza ukośnika w przód, „/”

  • static int VK_SPACE

  • static int VK_STOP

  • static int VK_SUBTRACT

  • static int VK_T

  • static int VK_TAB

  • static int VK_U

  • static int VK_UNDEFINED - Ta wartość jest używana do wskazania, że ​​keyCode jest nieznany.

  • static int VK_UNDERSCORE - stała dla klawisza „_”.

  • static int VK_UNDO

  • static int VK_UP - stała dla klawisza strzałki w górę, który nie jest klawiszem numerycznym.

  • static int VK_V

  • static int VK_W

  • static int VK_WINDOWS - Stała dla klucza Microsoft Windows „Windows”.

  • static int VK_X

  • static int VK_Y

  • static int VK_Z

Konstruktory klas

SN Konstruktor i opis
1

KeyEvent(Component source, int id, long when, int modifiers, int keyCode)

Przestarzałe. od JDK1.1

2

KeyEvent(Component source, int id, long when, int modifiers, int keyCode, char keyChar)

Konstruuje obiekt KeyEvent.

3

KeyEvent(Component source, int id, long when, int modifiers, int keyCode, char keyChar, int keyLocation)

Metody klasowe

SN Metoda i opis
1

char getKeyChar()

Zwraca znak skojarzony z kluczem w tym zdarzeniu.

2

int getKeyCode()

Zwraca liczbę całkowitą keyCode skojarzoną z kluczem w tym zdarzeniu.

3

int getKeyLocation()

Zwraca lokalizację klucza, który zapoczątkował to zdarzenie klucza.

4

static String getKeyModifiersText(int modifiers)

Zwraca ciąg opisujący klawisze modyfikujące, na przykład „Shift” lub „Ctrl + Shift”.

5

static String getKeyText(int keyCode)

Zwraca ciąg opisujący kod_klucza, na przykład „HOME”, „F1” lub „A”.

6

boolean isActionKey()

Zwraca czy klucz w tym zdarzeniu jest kluczem „akcji”.

7

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie.

8

void setKeyChar(char keyChar)

Ustaw wartość keyChar, aby wskazać znak logiczny.

9

void setKeyCode(int keyCode)

Ustaw wartość keyCode, aby wskazać klucz fizyczny.

10

void setModifiers(int modifiers)

Przestarzałe. od JDK1.1.4

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.event.InputEvent

  • java.awt.event.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT MouseEvent

To zdarzenie wskazuje, że w komponencie wystąpiła akcja myszy. To zdarzenie niskiego poziomu jest generowane przez obiekt składowy zdarzeń myszy i zdarzeń ruchu myszy.

  • naciśnięto przycisk myszy

  • przycisk myszy zostaje zwolniony

  • kliknięto przycisk myszy (wciśnięty i zwolniony)

  • kursor myszy wchodzi w niezakrytą część geometrii komponentu

  • kursor myszy opuszcza niezakrytą część geometrii komponentu

  • mysz jest poruszana

  • mysz jest przeciągnięta

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.MouseEvent klasa:

public class MouseEvent
   extends InputEvent

Pole

Poniżej znajdują się pola dla java.awt.event.MouseEvent klasa:

  • static int BUTTON1 - wskazuje przycisk myszy nr 1; używany przez getButton ()

  • static int BUTTON2 - wskazuje przycisk myszy nr 2; używany przez getButton ()

  • static int BUTTON3 - wskazuje przycisk myszy nr 3; używany przez getButton ()

  • static int MOUSE_CLICKED - Zdarzenie „kliknięcie myszą”

  • static int MOUSE_DRAGGED - Zdarzenie „przeciągnięcie myszy”

  • static int MOUSE_ENTERED - Zdarzenie „wpisano myszką”

  • static int MOUSE_EXITED - Zdarzenie „wyjście myszy”

  • static int MOUSE_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla zdarzeń myszy

  • static int MOUSE_LAST - ostatnia liczba w zakresie identyfikatorów używanych dla zdarzeń myszy

  • static int MOUSE_MOVED - Zdarzenie „przesunięcie myszy”

  • static int MOUSE_PRESSED - Zdarzenie „naciśnięcie myszy”

  • static int MOUSE_RELEASED - Wydarzenie „uwolnienie myszy”

  • static int MOUSE_WHEEL - Zdarzenie „kółko myszy”

  • static int NOBUTTON - wskazuje brak przycisków myszy; używany przez getButton ()

  • static int VK_WINDOWS - Stała dla klucza Microsoft Windows „Windows”.

Konstruktory klas

SN Konstruktor i opis
1

MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger)

Konstruuje obiekt MouseEvent z określonym składnikiem źródłowym, typem, modyfikatorami, współrzędnymi i liczbą kliknięć.

2

MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int button)

Konstruuje obiekt MouseEvent z określonym składnikiem źródłowym, typem, modyfikatorami, współrzędnymi i liczbą kliknięć.

3

MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int button)

Konstruuje obiekt MouseEvent z określonym składnikiem źródłowym, typem, modyfikatorami, współrzędnymi, współrzędnymi bezwzględnymi i liczbą kliknięć.

Metody klasowe

SN Metoda i opis
1

int getButton()

Zwraca informację, która z przycisków myszy zmieniła stan, jeśli w ogóle.

2

int getClickCount()

Zwraca liczbę kliknięć myszą skojarzonych z tym zdarzeniem.

3

Point getLocationOnScreen()

Zwraca bezwzględną pozycję x, y zdarzenia.

4

static String getMouseModifiersText(int modifiers)

Zwraca ciąg opisujący klawisze modyfikujące i przyciski myszy, które były wciśnięte podczas zdarzenia, na przykład „Shift” lub „Ctrl + Shift”.

5

Point getPoint()

Zwraca pozycję x, y zdarzenia względem składnika źródłowego.

6

int getX()

Zwraca poziomą pozycję x zdarzenia względem składnika źródłowego.

7

int getXOnScreen()

Zwraca bezwzględną poziomą pozycję x zdarzenia.

8

int getY()

Zwraca pionową pozycję y zdarzenia względem składnika źródłowego.

9

int getYOnScreen()

Zwraca bezwzględną pionową pozycję y zdarzenia.

10

boolean isPopupTrigger() Returns whether or not this mouse event is the popup menu trigger event for the platform.

11

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie.

12

void translatePoint(int x, int y)

Tłumaczy współrzędne zdarzenia na nowe położenie, dodając określone przesunięcia x (w poziomie) iy (w pionie).

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.event.InputEvent

  • java.awt.event.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT TextEvent

Obiekt tej klasy reprezentuje zdarzenia tekstowe. TextEvent jest generowany po wprowadzeniu znaku w pola tekstowe lub obszar tekstowy. Instancja TextEvent nie zawiera znaków znajdujących się aktualnie w komponencie tekstowym, który wygenerował zdarzenie, zamiast tego mamy inne metody pobierania tych informacji.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.TextEvent klasa:

public class TextEvent
   extends AWTEvent

Pole

Poniżej znajdują się pola dla java.awt.event.TextEvent klasa:

  • static int TEXT_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla zdarzeń tekstowych.

  • static int TEXT_LAST - ostatnia liczba w zakresie identyfikatorów używanych dla zdarzeń tekstowych.

  • static int TEXT_VALUE_CHANGED - ten identyfikator zdarzenia wskazuje na zmianę tekstu obiektu.

Konstruktory klas

<0tr>
SN Konstruktor i opis
1

TextEvent(Object source, int id)

Konstruuje obiekt TextEvent.

Metody klasowe

SN Metoda i opis
1

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie tekstowe.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT WindowEvent

Obiekt tej klasy reprezentuje zmianę stanu okna. To zdarzenie niskiego poziomu jest generowane przez obiekt Window, gdy jest on otwierany, zamykany, aktywowany, dezaktywowany, oznaczany ikoną lub deikonifikowany lub gdy fokus jest przenoszony okno.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.WindowEvent klasa:

public class WindowEvent
   extends ComponentEvent

Pole

Poniżej znajdują się pola dla java.awt.event.WindowEvent klasa:

  • static int WINDOW_ACTIVATED - typ zdarzenia aktywowanego przez okno.

  • static int WINDOW_CLOSED - Wydarzenie zamknięte.

  • static int WINDOW_CLOSING - Zdarzenie „okno się zamyka”.

  • static int WINDOW_DEACTIVATED - typ zdarzenia dezaktywującego okno.

  • static int WINDOW_DEICONIFIED - Typ zdarzenia deiconified okna.

  • static int WINDOW_FIRST - pierwsza liczba w zakresie identyfikatorów używanych do zdarzeń okna.

  • static int WINDOW_GAINED_FOCUS - Typ zdarzenia skupienia się na oknie.

  • static int WINDOW_ICONIFIED - Zdarzenie z ikonami okna.

  • static int WINDOW_LAST - ostatnia liczba w zakresie identyfikatorów używanych do zdarzeń okna.

  • static int WINDOW_LOST_FOCUS - Typ zdarzenia utraty aktywności okna.

  • static int WINDOW_OPENED - Zdarzenie otwarcia okna.

  • static int WINDOW_STATE_CHANGED - Typ zdarzenia ze zmianą stanu okna.

Konstruktory klas

<0tr>
SN Konstruktor i opis
1

WindowEvent(Window source, int id)

Konstruuje obiekt WindowEvent.

2

WindowEvent(Window source, int id, int oldState, int newState)

Konstruuje obiekt WindowEvent z określonymi stanami poprzedniego i nowego okna.

3

WindowEvent(Window source, int id, Window opposite)

Konstruuje obiekt WindowEvent z określonym przeciwległym Window.

4

WindowEvent(Window source, int id, Window opposite, int oldState, int newState)

Konstruuje obiekt WindowEvent.

Metody klasowe

SN Metoda i opis
1

int getNewState()

Dla zdarzeń WINDOW_STATE_CHANGED zwraca nowy stan okna.

2

int getOldState()

Dla zdarzeń WINDOW_STATE_CHANGED zwraca poprzedni stan okna.

3

Window getOppositeWindow()

Zwraca inne okno związane z tą zmianą fokusu lub aktywacji.

4

Window getWindow()

Zwraca inicjatora zdarzenia.

5

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.event.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

AWT AdjustmentEvent Class

Wprowadzenie

Klasa AdjustmentEvent reprezentuje zdarzenie regulacji emitowane przez regulowane obiekty.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.AdjustmentEvent klasa:

public class AdjustmentEvent
   extends AWTEvent

Pole

Poniżej znajdują się pola dla java.awt.Component klasa:

  • static int ADJUSTMENT_FIRST - Zaznacza pierwszą liczbę całkowitą dla zakresu identyfikatorów zdarzeń korekty.

  • static int ADJUSTMENT_LAST - Zaznacza ostatni identyfikator całkowity dla zakresu identyfikatorów zdarzeń korekty.

  • static int ADJUSTMENT_VALUE_CHANGED - Zdarzenie zmiany wartości korekty.

  • static int BLOCK_DECREMENT - Typ regulacji zmniejszenia bloku.

  • static int BLOCK_INCREMENT - Typ regulacji przyrostu bloku.

  • static int TRACK - Bezwzględny typ regulacji śledzenia.

  • static int UNIT_DECREMENT - Typ regulacji zmniejszenia wartości jednostki.

  • static int UNIT_INCREMENT - Typ regulacji przyrostu jednostki.

Konstruktory klas

SN Konstruktor i opis
1

AdjustmentEvent(Adjustable source, int id, int type, int value)

Konstruuje obiekt AdjustmentEvent z określonym regulowanym źródłem, typem zdarzenia, typem korekty i wartością.

2

AdjustmentEvent(Adjustable source, int id, int type, int value, boolean isAdjusting)

Konstruuje obiekt AdjustmentEvent z określonym regulowanym źródłem, typem zdarzenia, typem korekty i wartością.

Metody klasowe

SN Metoda i opis
1

Adjustable getAdjustable()

Zwraca regulowany obiekt, z którego pochodzi to zdarzenie.

2

int getAdjustmentType()

Zwraca typ korekty, która spowodowała zdarzenie zmiany wartości.

3

int getValue()

Zwraca bieżącą wartość w zdarzeniu korekty.

4

boolean getValueIsAdjusting()

Zwraca wartość true, jeśli jest to jedno z wielu zdarzeń korekty.

5

String paramString()

Zwraca ciąg znaków reprezentujący stan tego zdarzenia.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących klas:

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT ComponentEvent

Wprowadzenie

Klasa ComponentEvent oznacza, że ​​komponent się przesunął, zmienił rozmiar lub widoczność

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.ComponentEvent klasa:

public class ComponentEvent
   extends AWTEvent

Pole

Poniżej znajdują się pola dla java.awt.Component klasa:

  • static int COMPONENT_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla zdarzeń składowych.

  • static int COMPONENT_HIDDEN - to zdarzenie oznacza, że ​​komponent stał się niewidoczny.

  • static int COMPONENT_LAST - ostatnia liczba w zakresie identyfikatorów używanych dla zdarzeń składowych.

  • static int COMPONENT_MOVED - To zdarzenie oznacza, że ​​pozycja komponentu uległa zmianie.

  • static int COMPONENT_RESIZED - To zdarzenie oznacza, że ​​zmienił się rozmiar komponentu.

  • static int COMPONENT_SHOWN - To zdarzenie oznacza, że ​​komponent stał się widoczny.

Konstruktory klas

SN Konstruktor i opis
1

ComponentEvent(Component source, int id)

Konstruuje obiekt ComponentEvent.

Metody klasowe

SN Metoda i opis
1

Component getComponent()

Zwraca inicjatora zdarzenia.

2

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących klas:

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT ContainerEvent

Wprowadzenie

Klasa ContainerEvent oznacza, że ​​zawartość kontenera uległa zmianie w wyniku dodania lub usunięcia składnika.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.ContainerEvent klasa:

public class ContainerEvent
   extends ComponentEvent

Pole

Poniżej znajdują się pola dla java.awt.Component klasa:

  • static int COMPONENT_ADDED - To zdarzenie oznacza, że ​​do kontenera dodano komponent.

  • static int COMPONENT_REMOVED - To zdarzenie oznacza, że ​​składnik został usunięty z kontenera.

  • static int CONTAINER_FIRST - pierwsza liczba w zakresie identyfikatorów używanych dla zdarzeń w kontenerze.

  • static int CONTAINER_LAST - ostatnia liczba w zakresie identyfikatorów używanych dla zdarzeń kontenera.

Konstruktory klas

Metody klasowe

SN Konstruktor i opis
1

ContainerEvent(Component source, int id, Component child)

Konstruuje obiekt ContainerEvent.

SN Metoda i opis
1

Component getChild()

Zwraca składnik, na który miało wpływ zdarzenie.

2

Container getContainer()

Zwraca inicjatora zdarzenia.

3

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT MouseMotionEvent

Wprowadzenie

Interfejs MouseMotionEventwskazuje, że w komponencie wystąpiła akcja myszy. To zdarzenie niskiego poziomu jest generowane przez obiekt składowy po przeciągnięciu lub przesunięciu myszą.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.MouseMotionEvent Klasa:

public class MouseMotionEvent
   extends InputEvent

Metody interfejsu

SN Metoda i opis
1

void mouseDragged(MouseEvent e)

Wywoływane po naciśnięciu przycisku myszy na komponencie, a następnie przeciągnięciu.

2

void mouseMoved(MouseEvent e)

Wywoływane, gdy kursor myszy został przeniesiony na komponent, ale żaden przycisk nie został wciśnięty.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących klas:

  • java.awt.event.InputEvent

  • java.awt.event.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Klasa AWT PaintEvent

Wprowadzenie

Klasa PaintEvent służy do zapewnienia, że ​​wywołania metod paint / update są serializowane wraz z innymi zdarzeniami dostarczanymi z kolejki zdarzeń

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.PaintEvent klasa:

public class PaintEvent
   extends ComponentEvent

Pole

Poniżej znajdują się pola dla java.awt.Component klasa:

  • static int PAINT - Typ zdarzenia malowania.

  • static int PAINT_FIRST - Zaznacza pierwszą liczbę całkowitą dla zakresu identyfikatorów zdarzeń farby.

  • static int PAINT_LAST - Zaznacza ostatnią liczbę całkowitą dla zakresu identyfikatorów zdarzeń farby.

  • static int UPDATE - Typ zdarzenia aktualizacji.

Konstruktory klas

SN Konstruktor i opis
1

PaintEvent(Component source, int id, Rectangle updateRect)

Konstruuje obiekt PaintEvent z określonym składnikiem źródłowym i typem.

Metody klasowe

SN Metoda i opis
1

Rectangle getUpdateRect()

Zwraca prostokąt reprezentujący obszar, który należy przemalować w odpowiedzi na to zdarzenie.

2

String paramString()

Zwraca ciąg parametrów identyfikujący to zdarzenie.

3

void setUpdateRect(Rectangle updateRect)

Ustawia prostokąt reprezentujący obszar, który należy przemalować w odpowiedzi na to zdarzenie.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.ComponentEvent

  • java.awt.AWTEvent

  • java.util.EventObject

  • java.lang.Object

Słuchacze wydarzeń AWT

Odbiornik zdarzeń reprezentuje interfejsy odpowiedzialne za obsługę zdarzeń. Java udostępnia nam różne klasy nasłuchiwania zdarzeń, ale omówimy te, które są częściej używane. Każda metoda metody detektora zdarzeń ma pojedynczy argument jako obiekt, który jest podklasą klasy EventObject. Na przykład metody detektora zdarzeń myszy akceptują wystąpienie MouseEvent, gdzie MouseEvent pochodzi od EventObject.

Interfejs EventListner

Jest to interfejs znaczników, który musi rozszerzać każdy interfejs nasłuchujący.Ta klasa jest zdefiniowana w pakiecie java.util.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.util.EventListener berło:

public interface EventListener

Interfejsy nasłuchiwania zdarzeń AWT:

Poniżej znajduje się lista często używanych detektorów zdarzeń.

Interfejs AWT ActionListener

Klasa przetwarzająca ActionEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany w składniku. Obiekt można zarejestrować za pomocą metody addActionListener (). Gdy wystąpi zdarzenie action, wywoływana jest metoda actionPerformed tego obiektu.

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.ActionListener berło:

public interface ActionListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void actionPerformed(ActionEvent e)

Wywoływane, gdy występuje akcja.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład ActionListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showActionListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showActionListenerDemo(){
      headerLabel.setText("Listener in action: ActionListener");      

      ScrollPane panel = new ScrollPane();      
      panel.setBackground(Color.magenta);            

      Button okButton = new Button("OK");

      okButton.addActionListener(new CustomActionListener());        
      panel.add(okButton);
      controlPanel.add(panel);

      mainFrame.setVisible(true); 
   }

   class CustomActionListener implements ActionListener{

      public void actionPerformed(ActionEvent e) {
         statusLabel.setText("Ok Button Clicked.");
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT ComponentListener

Klasa przetwarzająca ComponentEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany z komponentem. Obiekt można zarejestrować za pomocą metody addComponentListener (). Zdarzenie składnika jest zgłaszane tylko w celach informacyjnych.

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.ComponentListener berło:

public interface ComponentListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void componentHidden(ComponentEvent e)

Wywoływane, gdy komponent stał się niewidoczny.

2

void componentMoved(ComponentEvent e)

Wywoływane, gdy zmienia się pozycja komponentu.

3

void componentResized(ComponentEvent e)

Wywoływane, gdy zmienia się rozmiar składnika.

4

void componentShown(ComponentEvent e)

Wywoływane, gdy komponent stał się widoczny.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład ComponentListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showComponentListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showComponentListenerDemo(){
      headerLabel.setText("Listener in action: ComponentListener");      

      ScrollPane panel = new ScrollPane();      
      panel.setBackground(Color.magenta);            

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");
      panel.add(msglabel);

      msglabel.addComponentListener(new CustomComponentListener());      
      controlPanel.add(panel);
      mainFrame.setVisible(true);  
   }

   class CustomComponentListener implements ComponentListener {

      public void componentResized(ComponentEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " resized. ");
      }

      public void componentMoved(ComponentEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " moved. ");
      }

      public void componentShown(ComponentEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " shown. ");
      }

      public void componentHidden(ComponentEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " hidden. ");
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT ItemListener

Klasa przetwarzająca ItemEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany z komponentem. Obiekt można zarejestrować za pomocą metody addItemListener (). Gdy wystąpi zdarzenie akcji, wywoływana jest metoda itemStateChanged tego obiektu.

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.ItemListener berło:

public interface ItemListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void itemStateChanged(ItemEvent e)

Wywoływane, gdy element został zaznaczony lub odznaczony przez użytkownika.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład elementu ItemListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showItemListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showItemListenerDemo(){
      headerLabel.setText("Listener in action: ItemListener");      
      Checkbox chkApple = new Checkbox("Apple");
      Checkbox chkMango = new Checkbox("Mango");
      Checkbox chkPeer = new Checkbox("Peer");
      
      chkApple.addItemListener(new CustomItemListener());
      chkMango.addItemListener(new CustomItemListener());
      chkPeer.addItemListener(new CustomItemListener());

      controlPanel.add(chkApple);
      controlPanel.add(chkMango);
      controlPanel.add(chkPeer);               
      mainFrame.setVisible(true); 
   }

   class CustomItemListener implements ItemListener {
      public void itemStateChanged(ItemEvent e) {
         statusLabel.setText(e.getItem()
         +" Checkbox: " 
         + (e.getStateChange()==1?"checked":"unchecked"));
      }    
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT KeyListener

Klasa przetwarzająca KeyEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany z komponentem. Obiekt można zarejestrować za pomocą metody addKeyListener ().

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.KeyListener berło:

public interface KeyListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void keyPressed(KeyEvent e)

Wywoływane po naciśnięciu klawisza.

2

void keyReleased(KeyEvent e)

Wywoływane po zwolnieniu klucza.

3

void keyTyped(KeyEvent e)

Wywoływane po wpisaniu klucza.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład KeyListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private TextField textField;
   
   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showKeyListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showKeyListenerDemo(){
      headerLabel.setText("Listener in action: KeyListener");      

      textField  = new TextField(10);

      textField.addKeyListener(new CustomKeyListener());
      Button okButton = new Button("OK");
      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("Entered text: " + textField.getText());                
         }
      });

      controlPanel.add(textField);
      controlPanel.add(okButton);    
      mainFrame.setVisible(true);  
   }

   class CustomKeyListener implements KeyListener{
      public void keyTyped(KeyEvent e) {           
      }

      public void keyPressed(KeyEvent e) {
         if(e.getKeyCode() == KeyEvent.VK_ENTER){
            statusLabel.setText("Entered text: " + textField.getText());
         }
      }

      public void keyReleased(KeyEvent e) {            
      }    
   } 
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT MouseListener

Klasa przetwarzająca MouseEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany w składniku. Obiekt można zarejestrować za pomocą metody addMouseListener ().

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.MouseListener berło:

public interface MouseListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void mouseClicked(MouseEvent e)

Wywoływane po kliknięciu (naciśnięciu i zwolnieniu) przycisku myszy na komponencie.

2

void mouseEntered(MouseEvent e)

Wywoływane, gdy mysz wchodzi do komponentu.

3

void mouseExited(MouseEvent e)

Wywoływane, gdy mysz wychodzi z komponentu.

4

void mousePressed(MouseEvent e)

Wywoływane po naciśnięciu przycisku myszy na komponencie.

5

void mouseReleased(MouseEvent e)

Wywoływane po zwolnieniu przycisku myszy na komponencie.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład MouseListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showMouseListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMouseListenerDemo(){
      headerLabel.setText("Listener in action: MouseListener");      

      Panel panel = new Panel();      
      panel.setBackground(Color.magenta);
      panel.setLayout(new FlowLayout());        
      panel.addMouseListener(new CustomMouseListener());

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      msglabel.addMouseListener(new CustomMouseListener());
      panel.add(msglabel);

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }

   class CustomMouseListener implements MouseListener{

      public void mouseClicked(MouseEvent e) {
         statusLabel.setText("Mouse Clicked: ("
         +e.getX()+", "+e.getY() +")");
      }   

      public void mousePressed(MouseEvent e) {
      }

      public void mouseReleased(MouseEvent e) {
      }

      public void mouseEntered(MouseEvent e) {
      }

      public void mouseExited(MouseEvent e) {
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT TextListener

Klasa przetwarzająca TextEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany z komponentem. Obiekt można zarejestrować za pomocą metody addTextListener ().

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.TextListener berło:

public interface TextListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void textValueChanged(TextEvent e)

Wywoływane, gdy wartość tekstu uległa zmianie.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład TextListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private TextField textField;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showTextListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showTextListenerDemo(){
      headerLabel.setText("Listener in action: TextListener");      

      textField  = new TextField(10);

      textField.addTextListener(new CustomTextListener());
      Button okButton = new Button("OK");
      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("Entered text: " 
            + textField.getText());                
         }
      });

      controlPanel.add(textField);
      controlPanel.add(okButton);    
      mainFrame.setVisible(true);  
   }

   class CustomTextListener implements TextListener {
      public void textValueChanged(TextEvent e) {
         statusLabel.setText("Entered text: " + textField.getText());               
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT WindowListener

Klasa obsługująca WindowEvent powinna implementować ten interfejs. Obiekt tej klasy musi być zarejestrowany w komponencie. Obiekt można zarejestrować za pomocą metody addWindowListener ().

Deklaracja interfejsu

Poniżej znajduje się deklaracja dla java.awt.event.WindowListener berło:

public interface WindowListener
   extends EventListener

Metody interfejsu

SN Metoda i opis
1

void windowActivated(WindowEvent e)

Wywoływane, gdy okno jest ustawione jako aktywne okno.

2

void windowClosed(WindowEvent e)

Wywoływane, gdy okno zostało zamknięte w wyniku wywołania dispose w oknie.

3

void windowClosing(WindowEvent e)

Wywoływane, gdy użytkownik próbuje zamknąć okno z menu systemowego okna.

4

void windowDeactivated(WindowEvent e)

Wywoływane, gdy okno nie jest już aktywnym oknem.

5

void windowDeiconified(WindowEvent e)

Wywoływane, gdy okno jest zmieniane ze stanu zminimalizowanego do normalnego.

6

void windowIconified(WindowEvent e)

Wywoływane, gdy okno zostanie zmienione ze stanu normalnego na zminimalizowany.

7

void windowOpened(WindowEvent e)

Wywoływane za pierwszym razem, gdy okno jest widoczne.

Dziedziczone metody

Ten interfejs dziedziczy metody z następujących interfejsów:

  • java.awt.EventListener

Przykład WindowListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showWindowListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showWindowListenerDemo(){
      headerLabel.setText("Listener in action: WindowListener");      

      Button okButton = new Button("OK");

      aboutFrame = new Frame();
      aboutFrame.setSize(300,200);;
      aboutFrame.setTitle("WindowListener Demo");
      aboutFrame.addWindowListener(new CustomWindowListener());

      Label msgLabel = new Label("Welcome to tutorialspoint.");
      msgLabel.setAlignment(Label.CENTER);
      msgLabel.setSize(100,100);
      aboutFrame.add(msgLabel);
      aboutFrame.setVisible(true);
   }

   class CustomWindowListener implements WindowListener {
      public void windowOpened(WindowEvent e) {
      }

      public void windowClosing(WindowEvent e) {
         aboutFrame.dispose();      
      }
      
      public void windowClosed(WindowEvent e) {
      }

      public void windowIconified(WindowEvent e) {
      }

      public void windowDeiconified(WindowEvent e) {
      }

      public void windowActivated(WindowEvent e) {
      }

      public void windowDeactivated(WindowEvent e) {
      }
   }   
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT AdjustmentListener

Wprowadzenie

InterfejsAdjustmentListenersłuży do odbierania zdarzeń dostosowawczych. Klasa przetwarzająca zdarzenia dostosowania musi implementować ten interfejs.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.AdjustmentListener berło:

public interface AdjustmentListener
extends EventListener

Metody interfejsu

SN Metoda i opis
1

void adjustmentValueChanged(AdjustmentEvent e)

Wywoływane, gdy zmieniła się wartość zmiennej.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących interfejsów:

  • java.awt.event.EventListener

Przykład AdjustmentListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showAdjustmentListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showAdjustmentListenerDemo(){
      headerLabel.setText("Listener in action: AdjustmentListener");      

      ScrollPane panel = new ScrollPane();      
      panel.setBackground(Color.magenta);
      panel.getHAdjustable().addAdjustmentListener(new CustomAdjustmentListener());

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);   
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");
      panel.add(msglabel);
      
      controlPanel.add(panel);
      mainFrame.setVisible(true);  
   }

   class CustomAdjustmentListener implements AdjustmentListener {
      public void adjustmentValueChanged(AdjustmentEvent e) {
         statusLabel.setText("Adjustment value: "+Integer.toString(e.getValue()));
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT ContainerListener

Wprowadzenie

InterfejsContainerListenersłuży do odbierania zdarzeń kontenera. Klasa przetwarzająca zdarzenia kontenera musi implementować ten interfejs.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.ContainerListener berło:

public interface ContainerListener
extends EventListener

Metody interfejsu

SN Metoda i opis
1

void componentAdded(ContainerEvent e)

Wywoływane po dodaniu składnika do kontenera.

2

void componentRemoved(ContainerEvent e)

Wywoływane, gdy składnik został usunięty z kontenera.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących interfejsów:

  • java.awt.event.EventListener

Przykład AdjustmentListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showContainerListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showContainerListenerDemo(){
      headerLabel.setText("Listener in action: ContainerListener");      

      ScrollPane panel = new ScrollPane();      
      panel.setBackground(Color.magenta);            
      panel.addContainerListener(new CustomContainerListener());  

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");
      panel.add(msglabel);
   
      controlPanel.add(panel);
      mainFrame.setVisible(true);  
   }

   class CustomContainerListener implements ContainerListener {
      public void componentAdded(ContainerEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " added. ");
      }

      public void componentRemoved(ContainerEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " removed. ");
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT MouseMotionListener

Wprowadzenie

InterfejsMouseMotionListenersłuży do odbierania zdarzeń ruchu myszy w komponencie. Klasa przetwarzająca zdarzenia ruchu myszy musi implementować ten interfejs.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.MouseMotionListener berło:

public interface MouseMotionListener
extends EventListener

Metody interfejsu

SN Metoda i opis
1

void mouseDragged(MouseEvent e)

Wywoływane po naciśnięciu przycisku myszy na komponencie, a następnie przeciągnięciu.

2

void mouseMoved(MouseEvent e)

Wywoływane, gdy kursor myszy został przeniesiony na komponent, ale żaden przycisk nie został wciśnięty.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących interfejsów:

  • java.awt.event.EventListener

Przykład MouseMotionListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showMouseMotionListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMouseMotionListenerDemo(){
      headerLabel.setText("Listener in action: MouseMotionListener");      

      Panel panel = new Panel();      
      panel.setBackground(Color.magenta);
      panel.setLayout(new FlowLayout());        
      panel.addMouseMotionListener(new CustomMouseMotionListener());

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");
      panel.add(msglabel);

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }   

   class CustomMouseMotionListener implements MouseMotionListener {

      public void mouseDragged(MouseEvent e) {
         statusLabel.setText("Mouse Dragged: ("+e.getX()+", "+e.getY() +")");
      }

      public void mouseMoved(MouseEvent e) {
         statusLabel.setText("Mouse Moved: ("+e.getX()+", "+e.getY() +")");
      }    
   }    
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Interfejs AWT FocusListener

Wprowadzenie

InterfejsFocusListenersłuży do odbierania zdarzeń fokusa klawiatury. Klasa przetwarzająca zdarzenia aktywności musi implementować ten interfejs.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.FocusListener berło:

public interface FocusListener
extends EventListener

Metody interfejsu

SN Metoda i opis
1

void focusGained(FocusEvent e)

Wywoływane, gdy składnik uzyskuje fokus klawiatury.

2

void focusLost(FocusEvent e)

Wywoływane, gdy składnik traci fokus klawiatury.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących interfejsów:

  • java.awt.event.EventListener

Przykład FocusListener

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtListenerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtListenerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtListenerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtListenerDemo  awtListenerDemo = new AwtListenerDemo();  
      awtListenerDemo.showFocusListenerDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
   
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

       
   private void showFocusListenerDemo(){

      headerLabel.setText("Listener in action: FocusListener");      

      Button okButton = new Button("OK");
      Button cancelButton = new Button("Cancel");
      okButton.addFocusListener(new CustomFocusListener());  
      cancelButton.addFocusListener(new CustomFocusListener());  

      controlPanel.add(okButton);
      controlPanel.add(cancelButton);     
      mainFrame.setVisible(true);  
   }

   class CustomFocusListener implements FocusListener{
      public void focusGained(FocusEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " gained focus. ");
      }

      public void focusLost(FocusEvent e) {
         statusLabel.setText(statusLabel.getText() 
         + e.getComponent().getClass().getSimpleName() + " lost focus. ");
      }
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtListenerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtListenerDemo

Sprawdź następujące dane wyjściowe

Adaptery zdarzeń AWT

Adaptery to abstrakcyjne klasy do odbierania różnych wydarzeń. Metody w tych klasach są puste. Te klasy istnieją jako udogodnienie przy tworzeniu obiektów nasłuchujących.

Adaptery AWT:

Poniżej znajduje się lista najczęściej używanych adapterów podczas słuchania zdarzeń GUI w AWT.

Klasa AWT FocusAdapter

Wprowadzenie

Klasa FocusAdapterjest klasą abstrakcyjną (adapterową) do odbierania zdarzeń fokusa klawiatury. Wszystkie metody tej klasy są puste. Ta klasa jest klasą ułatwiającą tworzenie obiektów detektora.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.FocusAdapter klasa:

public abstract class FocusAdapter
   extends Object
      implements FocusListener

Konstruktory klas

SN Konstruktor i opis
1

FocusAdapter()

Metody klasowe

SN Metoda i opis
1

void focusGained(FocusEvent e)

Wywoływane, gdy składnik uzyskuje fokus klawiatury.

2

focusLost(FocusEvent e)

Wywoływane, gdy składnik traci fokus klawiatury.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład FocusAdapter

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtAdapterDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtAdapterDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtAdapterDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtAdapterDemo  awtAdapterDemo = new AwtAdapterDemo();        
      awtAdapterDemo.showFocusAdapterDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showFocusAdapterDemo(){

      headerLabel.setText("Listener in action: FocusAdapter");      

      Button okButton = new Button("OK");
      Button cancelButton = new Button("Cancel");
      okButton.addFocusListener(new FocusAdapter(){
         public void focusGained(FocusEvent e) {
            statusLabel.setText(statusLabel.getText() 
            + e.getComponent().getClass().getSimpleName() 
            + " gained focus. ");
         }
      });  
      
      cancelButton.addFocusListener(new FocusAdapter(){
         public void focusLost(FocusEvent e) {
            statusLabel.setText(statusLabel.getText() 
            + e.getComponent().getClass().getSimpleName() 
            + " lost focus. ");
         }
      });  
      
      controlPanel.add(okButton);
      controlPanel.add(cancelButton);     
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtAdapterDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtAdapterDemo

Sprawdź następujące dane wyjściowe

Klasa AWT KeyAdapter

Wprowadzenie

Klasa KeyAdapterto abstrakcyjna (adapterowa) klasa do odbierania zdarzeń klawiatury. Wszystkie metody tej klasy są puste. Ta klasa jest klasą ułatwiającą tworzenie obiektów detektora.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.KeyAdapter klasa:

public abstract class KeyAdapter
   extends Object
      implements KeyListener

Konstruktory klas

SN Konstruktor i opis
1

KeyAdapter()

Metody klasowe

SN Metoda i opis
1

void keyPressed(KeyEvent e)

Wywoływane po naciśnięciu klawisza.

2

void keyReleased(KeyEvent e)

Wywoływane po zwolnieniu klucza.

3

void keyTyped(KeyEvent e)

Wywoływane po wpisaniu klucza.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład KeyAdapter

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtAdapterDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtAdapterDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtAdapterDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtAdapterDemo  awtAdapterDemo = new AwtAdapterDemo();        
      awtAdapterDemo.showKeyAdapterDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showKeyAdapterDemo(){
      headerLabel.setText("Listener in action: KeyAdapter");      

      final TextField textField = new TextField(10);

      textField.addKeyListener(new KeyAdapter() {
         public void keyPressed(KeyEvent e) {                
            if(e.getKeyCode() == KeyEvent.VK_ENTER){
               statusLabel.setText("Entered text: " + textField.getText());
            }
         }        
      });
      Button okButton = new Button("OK");
      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("Entered text: " + textField.getText());                
         }
      });

      controlPanel.add(textField);
      controlPanel.add(okButton);    
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtAdapterDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtAdapterDemo

Sprawdź następujące dane wyjściowe

Klasa AWT MouseAdapter

Wprowadzenie

Klasa MouseAdapterto abstrakcyjna (adapterowa) klasa do odbierania zdarzeń myszy. Wszystkie metody tej klasy są puste. Ta klasa jest klasą ułatwiającą tworzenie obiektów detektora.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.MouseAdapter klasa:

public abstract class MouseAdapter
   extends Object
      implements MouseListener, MouseWheelListener, MouseMotionListener

Konstruktory klas

SN Konstruktor i opis
1

MouseAdapter()

Metody klasowe

SN Metoda i opis
1

void mouseClicked(MouseEvent e)

Wywoływane po kliknięciu (naciśnięciu i zwolnieniu) przycisku myszy na komponencie.

2

void mouseDragged(MouseEvent e)

Wywoływane po naciśnięciu przycisku myszy na komponencie, a następnie przeciągnięciu.

3

void mouseEntered(MouseEvent e)

Wywoływane, gdy mysz wchodzi do komponentu.

4

void mouseExited(MouseEvent e)

Wywoływane, gdy mysz wychodzi z komponentu.

5

void mouseMoved(MouseEvent e)

Wywoływane, gdy kursor myszy został przeniesiony na komponent, ale żaden przycisk nie został wciśnięty.

6

void mousePressed(MouseEvent e)

Wywoływane po naciśnięciu przycisku myszy na komponencie.

7

void mouseReleased(MouseEvent e)

Wywoływane po zwolnieniu przycisku myszy na komponencie.

8

void mouseWheelMoved(MouseWheelEvent e)

Wywoływane po obróceniu kółka myszy.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład MouseAdapter

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtAdapterDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtAdapterDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtAdapterDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtAdapterDemo  awtAdapterDemo = new AwtAdapterDemo();  
      awtAdapterDemo.showMouseAdapterDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMouseAdapterDemo(){
      headerLabel.setText("Listener in action: MouseAdapter");      

      Panel panel = new Panel();      
      panel.setBackground(Color.magenta);
      panel.setLayout(new FlowLayout());        
      panel.addMouseListener(new MouseAdapter(){
         public void mouseClicked(MouseEvent e) {
            statusLabel.setText("Mouse Clicked: ("
            +e.getX()+", "+e.getY() +")");
         }                
      });

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      msglabel.addMouseListener(new MouseAdapter(){
         public void mouseClicked(MouseEvent e) {
            statusLabel.setText("Mouse Clicked: ("
            +e.getX()+", "+e.getY() +")");
         }                
      });
      panel.add(msglabel);
      controlPanel.add(panel);
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtAdapterDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtAdapterDemo

Sprawdź następujące dane wyjściowe

Klasa AWT MouseMotionAdapter

Wprowadzenie

Klasa MouseMotionAdapterto abstrakcyjna (adapter) klasa do odbierania zdarzeń ruchu myszy. Wszystkie metody tej klasy są puste. Ta klasa jest klasą ułatwiającą tworzenie obiektów detektora.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.MouseMotionAdapter klasa:

public abstract class MouseMotionAdapter
   extends Object
      implements MouseMotionListener

Konstruktory klas

SN Konstruktor i opis
1

MouseMotionAdapter()

Metody klasowe

SN Metoda i opis
1

void mouseDragged(MouseEvent e)

Wywoływane po naciśnięciu przycisku myszy na komponencie, a następnie przeciągnięciu.

2

void mouseMoved(MouseEvent e)

Wywoływane, gdy kursor myszy został przeniesiony na komponent, ale żaden przycisk nie został wciśnięty.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład MouseMotionAdapter

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtAdapterDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtAdapterDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtAdapterDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtAdapterDemo  awtAdapterDemo = new AwtAdapterDemo();        
      awtAdapterDemo.showMouseMotionAdapterDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMouseMotionAdapterDemo(){
      headerLabel.setText("Listener in action: MouseMotionAdapter");      

      Panel panel = new Panel();      
      panel.setBackground(Color.magenta);
      panel.setLayout(new FlowLayout());        
      panel.addMouseMotionListener(new MouseMotionAdapter(){
         public void mouseMoved(MouseEvent e) {
            statusLabel.setText("Mouse Moved: ("+e.getX()+", "+e.getY() +")");
         }                
      });

      Label msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");
      panel.add(msglabel);

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtAdapterDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtAdapterDemo

Sprawdź następujące dane wyjściowe

Klasa AWT WindowAdapter

Wprowadzenie

Klasa WindowAdapterto abstrakcyjna (adapterowa) klasa do odbierania zdarzeń okna. Wszystkie metody tej klasy są puste. Ta klasa jest klasą ułatwiającą tworzenie obiektów detektora.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.event.WindowAdapter klasa:

public abstract class WindowAdapter
   extends Object
      implements WindowListener, WindowStateListener, WindowFocusListener

Konstruktory klas

SN Konstruktor i opis
1

WindowAdapter()

Metody klasowe

SN Metoda i opis
1

void windowActivated(WindowEvent e)

Wywoływane, gdy okno jest aktywowane.

2

void windowClosed(WindowEvent e)

Wywoływane po zamknięciu okna.

3

void windowClosing(WindowEvent e)

Wywoływane, gdy okno jest w trakcie zamykania.

4

void windowDeactivated(WindowEvent e)

Wywoływane, gdy okno jest dezaktywowane.

5

void windowDeiconified(WindowEvent e)

Wywoływane, gdy okno jest pozbawione ikon.

6

void windowGainedFocus(WindowEvent e)

Wywoływane, gdy okno jest ustawione jako aktywne okno, co oznacza, że ​​okno lub jeden z jego składników podrzędnych będzie odbierać zdarzenia klawiatury.

7

void windowIconified(WindowEvent e)

Wywoływane, gdy okno jest ikonizowane.

8

void windowLostFocus(WindowEvent e)

Wywoływane, gdy okno nie jest już aktywnym oknem, co oznacza, że ​​zdarzenia klawiatury nie będą już dostarczane do okna ani żadnego z jego składników podrzędnych.

9

void windowOpened(WindowEvent e)

Wywoływane po otwarciu okna.

10

void windowStateChanged(WindowEvent e)

Wywoływane po zmianie stanu okna.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład WindowAdapter

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtAdapterDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtAdapterDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtAdapterDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtAdapterDemo  awtAdapterDemo = new AwtAdapterDemo();        
      awtAdapterDemo.showWindowAdapterDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showWindowAdapterDemo(){
      headerLabel.setText("Listener in action: WindowAdapter");      

      Button okButton = new Button("OK");

      final Frame aboutFrame = new Frame();
      aboutFrame.setSize(300,200);;
      aboutFrame.setTitle("WindowAdapter Demo");
      aboutFrame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent windowEvent){
               aboutFrame.dispose();
         }        
      });    
      Label msgLabel = new Label("Welcome to tutorialspoint.");
      msgLabel.setAlignment(Label.CENTER);
      msgLabel.setSize(100,100);
      aboutFrame.add(msgLabel);
      aboutFrame.setVisible(true);
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtAdapterDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtAdapterDemo

Sprawdź następujące dane wyjściowe

Układy AWT

Wprowadzenie

Układ oznacza rozmieszczenie komponentów w pojemniku. Innymi słowy, możemy powiedzieć, że umieszcza się komponenty w określonym miejscu w pojemniku. Zadanie rozmieszczenia elementów sterujących jest wykonywane automatycznie przez Menedżera układu.

Menedżer układu

Menedżer układu automatycznie umieszcza wszystkie komponenty w kontenerze. Jeśli nie używamy menedżera układu, również komponenty są pozycjonowane przez domyślnego menedżera układu. Możliwe jest ręczne rozmieszczenie elementów sterujących, ale staje się to bardzo trudne z dwóch następujących powodów.

  • Obsługa dużej liczby elementów sterujących w kontenerze jest bardzo uciążliwa.

  • Często informacje o szerokości i wysokości komponentu nie są podawane, gdy musimy je ustawić.

Java dostarcza nam różnych menedżerów układu do pozycjonowania elementów sterujących. Właściwości, takie jak rozmiar, kształt i rozmieszczenie, różnią się w zależności od menedżera układu. Kiedy rozmiar apletu lub okna aplikacji zmienia się, rozmiar, kształt i rozmieszczenie komponentów również zmienia się w odpowiedzi, tj. Menedżerowie układu dostosowują się do wymiarów przeglądarki apletów lub okna aplikacji.

Menedżer układu jest powiązany z każdym obiektem kontenera. Każdy menedżer układu jest obiektem klasy, która implementuje interfejs LayoutManager.

Poniżej znajdują się interfejsy i klasy definiujące funkcje Layout Managera.

Interfejs AWT LayoutManager

Wprowadzenie

InterfejsLayoutManager służy do definiowania interfejsu dla klas, które wiedzą, jak układać kontenery.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.LayoutManager berło:

public interface LayoutManager

Metody interfejsu

SN Metoda i opis
1

void addLayoutComponent(String name, Component comp)

Jeśli menedżer układu używa ciągu znaków dla poszczególnych komponentów, dodaje kompozycję składnika do układu, kojarząc ją z ciągiem określonym przez nazwę.

2

void layoutContainer(Container parent)

Układa określony pojemnik.

3

Dimension minimumLayoutSize(Container parent)

Oblicza minimalne wymiary dla określonego kontenera, biorąc pod uwagę zawarte w nim składniki.

4

Dimension preferredLayoutSize(Container parent)

Oblicza preferowane wymiary rozmiaru dla określonego kontenera, biorąc pod uwagę zawarte w nim składniki.

5

void removeLayoutComponent(Component comp)

Usuwa określony składnik z układu.

Interfejs AWT LayoutManager2

Wprowadzenie

InterfejsLayoutManger służy do definiowania interfejsu dla klas, które wiedzą, jak układać kontenery na podstawie obiektu ograniczeń układu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.LayoutManager2 berło:

public interface LayoutManger2
   extends LayoutManager

Metody interfejsu

SN Metoda i opis
1

void addLayoutComponent(Component comp, Object constraints)

Dodaje określony składnik do układu przy użyciu określonego obiektu ograniczającego.

2

float getLayoutAlignmentX(Container target)

Zwraca wyrównanie wzdłuż osi x.

3

float getLayoutAlignmentY(Container target)

Zwraca wyrównanie wzdłuż osi y.

4

void invalidateLayout(Container target)

Unieważnia układ, wskazując, że jeśli menedżer układu zapisał w pamięci podręcznej informacje, należy je odrzucić.

5

Dimension maximumLayoutSize(Container target)

Oblicza maksymalne wymiary dla określonego kontenera, biorąc pod uwagę zawarte w nim składniki.

Klasa AWT BorderLayout

Wprowadzenie

Klasa BorderLayoutukłada komponenty tak, aby pasowały do ​​pięciu regionów: wschodniego, zachodniego, północnego, południowego i środkowego. Każdy region może zawierać tylko jeden składnik, a każdy składnik w każdym regionie jest identyfikowany przez odpowiednią stałą PÓŁNOC, POŁUDNIE, WSCHÓD, ZACHÓD i CENTRUM.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.BorderLayout klasa:

public class BorderLayout
   extends Object
      implements LayoutManager2, Serializable

Pole

Poniżej znajdują się pola dla java.awt.BorderLayout klasa:

  • static String AFTER_LAST_LINE - Synonim PAGE_END.

  • static String AFTER_LINE_ENDS - Synonim LINE_END.

  • static String BEFORE_FIRST_LINE - Synonim dla PAGE_START.

  • static String BEFORE_LINE_BEGINS - Synonim dla LINE_START.

  • static String CENTER - Ograniczenie układu środka (środek kontenera).

  • static String EAST - Ograniczenie układu wschodniego (prawa strona kontenera).

  • static String LINE_END - Komponent idzie na koniec kierunku linii dla układu.

  • static String LINE_START - Komponent idzie na początku kierunku linii dla układu.

  • static String NORTH - Ograniczenie układu północnego (góra kontenera).

  • static String PAGE_END - Komponent znajduje się po ostatnim wierszu treści układu.

  • static String PAGE_START - Komponent znajduje się przed pierwszym wierszem treści układu.

  • static String SOUTH - Ograniczenie układu południowego (spód kontenera).

  • static String WEST - Ograniczenie układu zachodniego (lewa strona kontenera).

Konstruktory klas

SN Konstruktor i opis
1

BorderLayout()

Tworzy nowy układ obramowania bez przerw między komponentami.

2

BorderLayout(int hgap, int vgap)

Tworzy układ obramowania z określonymi odstępami między komponentami.

Metody klasowe

SN Metoda i opis
1

void addLayoutComponent(Component comp, Object constraints)

Dodaje określony składnik do układu przy użyciu określonego obiektu ograniczającego.

2

void addLayoutComponent(String name, Component comp)

Jeśli menedżer układu używa ciągu znaków dla poszczególnych komponentów, dodaje kompozycję składnika do układu, kojarząc ją z ciągiem określonym przez nazwę.

3

int getHgap()

Zwraca poziomą przerwę między komponentami.

4

float getLayoutAlignmentX(Container parent)

Zwraca wyrównanie wzdłuż osi x.

5

float getLayoutAlignmentY(Container parent)

Zwraca wyrównanie wzdłuż osi y.

6

int getVgap()

Zwraca pionową przerwę między komponentami.

7

void invalidateLayout(Container target)

Unieważnia układ, wskazując, że jeśli menedżer układu zapisał w pamięci podręcznej informacje, należy je odrzucić.

8

void layoutContainer(Container target)


9

Dimension maximumLayoutSize(Container target)

Zwraca maksymalne wymiary dla tego układu, biorąc pod uwagę składniki w określonym kontenerze docelowym.

10

Dimension minimumLayoutSize(Container target)

Określa minimalny rozmiar kontenera docelowego za pomocą tego menedżera układu.

11

Dimension preferredLayoutSize(Container target)

Określa preferowany rozmiar kontenera docelowego przy użyciu tego menedżera układu na podstawie składników w kontenerze.

12

void removeLayoutComponent(Component comp)

Usuwa określony składnik z tego układu obramowania.

13

void setHgap(int hgap)

Ustawia poziomą szczelinę między komponentami.

14

void setVgap(int vgap)

Ustawia pionowy odstęp między komponentami.

15

String toString()

Zwraca ciąg reprezentujący stan tego układu obramowania.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład BorderLayout

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtLayoutDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();  
      awtLayoutDemo.showBorderLayoutDemo();       
   }
      
   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showBorderLayoutDemo(){
      headerLabel.setText("Layout in action: BorderLayout");      

      Panel panel = new Panel();
      panel.setBackground(Color.darkGray);
      panel.setSize(300,300);
      BorderLayout layout = new BorderLayout();
      layout.setHgap(10);
      layout.setVgap(10);
      panel.setLayout(layout);        
	  
      panel.add(new Button("Center"),BorderLayout.CENTER);
      panel.add(new Button("Line Start"),BorderLayout.LINE_START); 
      panel.add(new Button("Line End"),BorderLayout.LINE_END);
      panel.add(new Button("East"),BorderLayout.EAST);   
      panel.add(new Button("West"),BorderLayout.WEST); 
      panel.add(new Button("North"),BorderLayout.NORTH); 
      panel.add(new Button("South"),BorderLayout.SOUTH); 

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo

Sprawdź następujące dane wyjściowe

Klasa AWT CardLayout

Wprowadzenie

Klasa CardLayoutukłada każdy komponent w kontenerze jako kartę. W danym momencie widoczna jest tylko jedna karta, a pojemnik działa jak stos kart.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.CardLayout klasa:

public class CardLayout
   extends Object
      implements LayoutManager2, Serializable

Konstruktory klas

SN Konstruktor i opis
1

CardLayout()

Tworzy nowy układ karty z przerwami o rozmiarze zero.

2

CardLayout(int hgap, int vgap)

Tworzy nowy układ karty z określonymi poziomymi i pionowymi przerwami.

Metody klasowe

SN Metoda i opis
1

void addLayoutComponent(Component comp, Object constraints)

Dodaje określony składnik do wewnętrznej tabeli nazw tego układu karty.

2

void addLayoutComponent(String name, Component comp)

Jeśli menedżer układu używa ciągu znaków dla poszczególnych komponentów, dodaje kompozycję składnika do układu, kojarząc ją z ciągiem określonym przez nazwę.

3

void first(Container parent)

Odwraca się do pierwszej karty pojemnika.

4

int getHgap()

Pobiera poziomą przerwę między składnikami.

5

float getLayoutAlignmentX(Container parent)

Zwraca wyrównanie wzdłuż osi x.

6

float getLayoutAlignmentY(Container parent)

Zwraca wyrównanie wzdłuż osi y.

7

int getVgap()

Pobiera pionową przerwę między składnikami.

8

void invalidateLayout(Container target)

Unieważnia układ, wskazując, że jeśli menedżer układu zapisał w pamięci podręcznej informacje, należy je odrzucić.

9

void last(Container parent)

Przejście do ostatniej karty kontenera.

10

void layoutContainer(Container parent)

Układa określony pojemnik przy użyciu tego układu karty.

11

Dimension maximumLayoutSize(Container target)

Zwraca maksymalne wymiary dla tego układu, biorąc pod uwagę składniki w określonym kontenerze docelowym.

12

Dimension minimumLayoutSize(Container parent)

Oblicza minimalny rozmiar dla określonego panelu.

13

void next(Container parent)

Przejście do następnej karty określonego kontenera.

14

Dimension preferredLayoutSize(Container parent)

Określa preferowany rozmiar argumentu kontenera przy użyciu tego układu karty.

15

void previous(Container parent)

Przejście do poprzedniej karty określonego kontenera.

16

void removeLayoutComponent(Component comp)

Usuwa określony składnik z układu.

17

void setHgap(int hgap)

Ustawia poziomą szczelinę między komponentami.

18

void setVgap(int vgap)

Ustawia pionowy odstęp między komponentami.

19

void show(Container parent, String name)

Wyświetla składnik, który został dodany do tego układu o określonej nazwie przy użyciu metody addLayoutComponent.

20

String toString()

Zwraca ciąg reprezentujący stan tego układu karty.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład CardLayout

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtLayoutDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();  
      awtLayoutDemo.showCardLayoutDemo();       
   }
      
   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showCardLayoutDemo(){
      headerLabel.setText("Layout in action: CardLayout");      

      final Panel panel = new Panel();
      panel.setBackground(Color.CYAN);
      panel.setSize(300,300);

      CardLayout layout = new CardLayout();
      layout.setHgap(10);
      layout.setVgap(10);
      panel.setLayout(layout);        

      Panel buttonPanel = new Panel(new FlowLayout());

      buttonPanel.add(new Button("OK"));
      buttonPanel.add(new Button("Cancel"));    

      Panel textBoxPanel = new Panel(new FlowLayout());

      textBoxPanel.add(new Label("Name:"));
      textBoxPanel.add(new TextField(20));

      panel.add("Button", buttonPanel);
      panel.add("Text", textBoxPanel);

      Choice choice = new Choice();
      choice.add("Button");
      choice.add("Text");

      choice.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            CardLayout cardLayout = (CardLayout)(panel.getLayout());
            cardLayout.show(panel, (String)e.getItem());
         }
      });
      controlPanel.add(choice);
      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo

Sprawdź następujące dane wyjściowe

Klasa AWT FlowLayout

Wprowadzenie

Klasa FlowLayout komponenty w przepływie od lewej do prawej.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.FlowLayout klasa:

public class FlowLayout
   extends Object
      implements LayoutManager, Serializable

Pole

Poniżej znajdują się pola dla java.awt.BorderLayout klasa:

  • static int CENTER - Ta wartość wskazuje, że każdy wiersz komponentów powinien być wyśrodkowany.

  • static int LEADING - Wartość ta wskazuje, że każdy rząd składników powinien być wyrównany do krawędzi czołowej orientacji pojemnika, na przykład do lewej w orientacji od lewej do prawej.

  • static int LEFT - Ta wartość wskazuje, że każdy wiersz składników powinien być wyrównany do lewej.

  • static int RIGHT - Ta wartość wskazuje, że każdy wiersz składników powinien być wyjustowany do prawej.

  • static int TRAILING - Wartość ta wskazuje, że każdy wiersz składników powinien być wyrównany do tylnej krawędzi orientacji kontenera, na przykład do prawej w orientacji od lewej do prawej.

Konstruktory klas

SN Konstruktor i opis
1

FlowLayout()

Konstruuje nowy układ FlowLayout z wyśrodkowanym wyrównaniem i domyślną 5-jednostkową szczeliną poziomą i pionową.

2

FlowLayout(int align)

Konstruuje nowy FlowLayout z określonym wyrównaniem i domyślną 5-jednostkową przerwą poziomą i pionową.

3

FlowLayout(int align, int hgap, int vgap)

Tworzy nowego menedżera układu przepływu ze wskazaną linią trasowania i wskazanymi poziomymi i pionowymi przerwami.

Metody klasowe

SN Metoda i opis
1

void addLayoutComponent(String name, Component comp)

Dodaje określony składnik do układu.

2

int getAlignment()

Pobiera wyrównanie dla tego układu.

3

int getHgap()

Pobiera poziomą przerwę między składnikami.

4

int getVgap()

Pobiera pionową przerwę między składnikami.

5

void layoutContainer(Container target)

Wykłada pojemnik.

6

Dimension minimumLayoutSize(Container target)

Zwraca minimalne wymiary potrzebne do rozmieszczenia widocznych składników zawartych w określonym kontenerze docelowym.

7

Dimension preferredLayoutSize(Container target)

Zwraca preferowane wymiary dla tego układu, biorąc pod uwagę widoczne komponenty w określonym kontenerze docelowym.

8

void removeLayoutComponent(Component comp)

Usuwa określony składnik z układu.

9

void setAlignment(int align)

Ustawia wyrównanie dla tego układu.

10

void setHgap(int hgap)

Ustawia poziomą szczelinę między komponentami.

11

void setVgap(int vgap)

Ustawia pionowy odstęp między komponentami.

12

String toString()

Zwraca reprezentację ciągu tego obiektu FlowLayout i jego wartości.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład FlowLayout

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtLayoutDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();  
      awtLayoutDemo.showFlowLayoutDemo();       
   }
      
   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showFlowLayoutDemo(){
      headerLabel.setText("Layout in action: FlowLayout");      

      Panel panel = new Panel();
      panel.setBackground(Color.darkGray);
      panel.setSize(200,200);
      FlowLayout layout = new FlowLayout();
      layout.setHgap(10);              
      layout.setVgap(10);
      panel.setLayout(layout);        
      panel.add(new Button("OK"));
      panel.add(new Button("Cancel"));       

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo

Sprawdź następujące dane wyjściowe

Klasa AWT GridLayout

Wprowadzenie

Klasa GridLayout układa komponenty w prostokątnej siatce.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.GridLayout klasa:

public class GridLayout
   extends Object
      implements LayoutManager, Serializable

Konstruktory klas

SN Konstruktor i opis
1

GridLayout()

Tworzy układ siatki z domyślną jedną kolumną na komponent w jednym wierszu.

2

GridLayout(int rows, int cols)

Tworzy układ siatki z określoną liczbą wierszy i kolumn.

3

GridLayout(int rows, int cols, int hgap, int vgap)

Tworzy układ siatki z określoną liczbą wierszy i kolumn.

Metody klasowe

SN Metoda i opis
1

void addLayoutComponent(String name, Component comp)

Dodaje określony składnik o określonej nazwie do układu.

2

int getColumns()

Pobiera liczbę kolumn w tym układzie.

3

int getHgap()

Pobiera poziomą przerwę między składnikami.

4

int getRows()

Pobiera liczbę wierszy w tym układzie.

5

int getVgap()

Pobiera pionową przerwę między składnikami.

6

void layoutContainer(Container parent)

Układa określony kontener przy użyciu tego układu.

7

Dimension minimumLayoutSize(Container parent)

Określa minimalny rozmiar argumentu kontenera przy użyciu tego układu siatki.

8

Dimension preferredLayoutSize(Container parent)

Określa preferowany rozmiar argumentu kontenera przy użyciu tego układu siatki.

9

void removeLayoutComponent(Component comp)

Usuwa określony składnik z układu.

10

void setColumns(int cols)

Ustawia liczbę kolumn w tym układzie na określoną wartość.

11

void setHgap(int hgap)

Ustawia poziomą szczelinę między komponentami na określoną wartość.

12

void setRows(int rows)

Ustawia liczbę wierszy w tym układzie na określoną wartość.

13

void setVgap(int vgap)

Ustawia odstęp pionowy między komponentami na określoną wartość.

14

String toString()

Zwraca ciąg znaków reprezentujący wartości tego układu siatki.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład układu GridLayout

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtLayoutDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();  
      awtLayoutDemo.showGridLayoutDemo();       
   }
      
   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showGridLayoutDemo(){
      headerLabel.setText("Layout in action: GridLayout");      

      Panel panel = new Panel();
      panel.setBackground(Color.darkGray);
      panel.setSize(300,300);
      GridLayout layout = new GridLayout(0,3);
      layout.setHgap(10);
      layout.setVgap(10);
      
      panel.setLayout(layout);        
      panel.add(new Button("Button 1"));
      panel.add(new Button("Button 2")); 
      panel.add(new Button("Button 3")); 
      panel.add(new Button("Button 4")); 
      panel.add(new Button("Button 5")); 
      controlPanel.add(panel);
      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo

Sprawdź następujące dane wyjściowe

AWT GridBagLayout Class

Wprowadzenie

Klasa GridBagLayout układa komponenty w poziomie i pionie.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.GridBagLayout klasa:

public class GridBagLayout
   extends Object
      implements LayoutManager2, Serializable

Pole

Poniżej znajdują się pola dla java.awt.BorderLayout klasa:

  • double[] columnWeights - To pole zawiera nadpisania wag kolumn.

  • int[] columnWidths - To pole przechowuje nadpisania minimalnej szerokości kolumny.

  • protected Hashtable comptable - Ta tablica haszująca utrzymuje powiązanie między komponentem a jego ograniczeniami siatki.

  • protected GridBagConstraints defaultConstraints - W tym polu znajduje się instancja ograniczeń siatki siatki zawierająca wartości domyślne, więc jeśli komponent nie ma skojarzonych z nią ograniczeń siatki siatki, wówczas do komponentu zostanie przypisana kopia defaultConstraints.

  • protected java.awt.GridBagLayoutInfo layoutInfo - To pole zawiera informacje o układzie dla siatki.

  • protected static int MAXGRIDSIZE - Maksymalna liczba pozycji siatki (zarówno w poziomie, jak iw pionie), które można ułożyć w układzie siatki.

  • protected static int MINSIZE - Najmniejsza siatka, jaką można ułożyć w układzie siatki.

  • protected static int PREFERREDSIZE - Preferowany rozmiar siatki, który można ułożyć w układzie siatki.

  • int[] rowHeights - To pole przechowuje nadpisania do minimalnych wysokości wiersza.

  • double[] rowWeights - To pole zawiera nadpisania wag wierszy.

Konstruktory klas

SN Konstruktor i opis
1

GridBagLayout()

Tworzy menedżera układu siatki.

Metody klasowe

SN Metoda i opis
1

void addLayoutComponent(Component comp, Object constraints)

Dodaje określony składnik do układu przy użyciu określonego obiektu ograniczeń.

2

void addLayoutComponent(String name, Component comp)

Dodaje określony składnik o określonej nazwie do układu.

3

protected void adjustForGravity(GridBagConstraints constraints, Rectangle r)

Dopasowuje pola x, y, szerokość i wysokość do właściwych wartości w zależności od geometrii wiązania i pól.

4

protected void AdjustForGravity(GridBagConstraints constraints, Rectangle r)

Ta metoda jest przestarzała i dostarczana tylko w celu zapewnienia zgodności z poprzednimi wersjami; nowy kod powinien zamiast tego wywołać funkcję AdjustForGravity.

5

protected void arrangeGrid(Container parent)

Układa siatkę.

6

protected void ArrangeGrid(Container parent)

Ta metoda jest przestarzała i dostarczana tylko w celu zapewnienia zgodności z poprzednimi wersjami; nowy kod powinien zamiast tego wywoływać polecenierangeGrid.

7

GridBagConstraints getConstraints(Component comp)

Pobiera ograniczenia dla określonego składnika.

8

float getLayoutAlignmentX(Container parent)

Zwraca wyrównanie wzdłuż osi x.

9

float getLayoutAlignmentY(Container parent)

Zwraca wyrównanie wzdłuż osi y.

10

int[][] getLayoutDimensions()

Określa szerokości kolumn i wysokości wierszy dla siatki układu.

11

protected java.awt.GridBagLayoutInfo getLayoutInfo(Container parent, int sizeflag)

Wypełnia wystąpienie GridBagLayoutInfo dla bieżącego zestawu zarządzanych elementów podrzędnych.

12

protected java.awt.GridBagLayoutInfo GetLayoutInfo(Container parent, int sizeflag)

Ta metoda jest przestarzała i dostarczana tylko w celu zapewnienia zgodności z poprzednimi wersjami; nowy kod powinien zamiast tego wywołać getLayoutInfo.

13

Point getLayoutOrigin()

Określa początek obszaru układu w przestrzeni współrzędnych grafiki kontenera docelowego.

14

double[][] getLayoutWeights()

Określa wagi kolumn i wierszy siatki układu.

15

protected Dimension getMinSize(Container parent, java.awt.GridBagLayoutInfo info)

Oblicza minimalny rozmiar wzorca na podstawie informacji z getLayoutInfo ().

16

protected Dimension GetMinSize(Container parent, java.awt.GridBagLayoutInfo info)

Ta metoda jest przestarzała i dostarczana tylko w celu zapewnienia zgodności z poprzednimi wersjami; nowy kod powinien zamiast tego wywołać getMinSize.

17

void invalidateLayout(Container target)

Unieważnia układ, wskazując, że jeśli menedżer układu zapisał w pamięci podręcznej informacje, należy je odrzucić.

18

void layoutContainer(Container parent)

Układa określony kontener przy użyciu tego układu siatki.

19

Point location(int x, int y)

Określa, która komórka w siatce układu zawiera punkt określony przez (x, y).

20

protected GridBagConstraints lookupConstraints(Component comp)

Pobiera ograniczenia dla określonego składnika.

21

Dimension maximumLayoutSize(Container target)

Zwraca maksymalne wymiary dla tego układu, biorąc pod uwagę składniki w określonym kontenerze docelowym.

22

Dimension minimumLayoutSize(Container parent)

Określa minimalny rozmiar kontenera nadrzędnego przy użyciu tego układu siatki.

23

Dimension preferredLayoutSize(Container parent)

Określa preferowany rozmiar kontenera nadrzędnego przy użyciu tego układu siatki.

24

void removeLayoutComponent(Component comp)

Usuwa określony składnik z tego układu.

25

void setConstraints(Component comp, GridBagConstraints constraints)

Ustawia ograniczenia dla określonego komponentu w tym układzie.

26

String toString()

Zwraca ciąg znaków reprezentujący wartości tego układu siatki.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład GridBagLayout

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtLayoutDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtLayoutDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtLayoutDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtLayoutDemo  awtLayoutDemo = new AwtLayoutDemo();  
      awtLayoutDemo.showGridBagLayoutDemo();       
   }
      
   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showGridBagLayoutDemo(){
      headerLabel.setText("Layout in action: GridBagLayout");      

      Panel panel = new Panel();
      panel.setBackground(Color.darkGray);
      panel.setSize(300,300);
      GridBagLayout layout = new GridBagLayout();

      panel.setLayout(layout);        
      GridBagConstraints gbc = new GridBagConstraints();

      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridx = 0;
      gbc.gridy = 0;
      panel.add(new Button("Button 1"),gbc);

      gbc.gridx = 1;
      gbc.gridy = 0;
      panel.add(new Button("Button 2"),gbc); 

      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.ipady = 20;   
      gbc.gridx = 0;
      gbc.gridy = 1;
      panel.add(new Button("Button 3"),gbc); 

      gbc.gridx = 1;
      gbc.gridy = 1;       
      panel.add(new Button("Button 4"),gbc);  

      gbc.gridx = 0;
      gbc.gridy = 2;      
      gbc.fill = GridBagConstraints.HORIZONTAL;
      gbc.gridwidth = 2;
      panel.add(new Button("Button 5"),gbc);  

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo

Sprawdź następujące dane wyjściowe

Kontenery AWT

Kontenery są integralną częścią komponentów AWT GUI. Kontener zapewnia przestrzeń, w której można umieścić komponent. Kontener w AWT jest sam w sobie komponentem i dodaje możliwość dodawania komponentu do siebie. Należy wziąć pod uwagę następujące kwestie.

  • Podklasy kontenera nazywane są kontenerami. Na przykład Panel, Rama i Okno.

  • Kontener może dodać do siebie tylko komponent.

  • W każdym kontenerze znajduje się domyślny układ, który można przesłonić za pomocą metody setLayout.

Klasa kontenera AWT

Wprowadzenie

Klasa Containerto super klasa dla kontenerów AWT. Obiekt kontenera może zawierać inne komponenty AWT.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Container klasa:

public class Container
   extends Component

Konstruktory klas

SN Konstruktor i opis
1

Container()

Spowoduje to utworzenie nowego kontenera.

Metody klasowe

SN Metoda i opis
1

Component add(Component comp)

Dołącza określony składnik na końcu tego kontenera.

2

Component add(Component comp, int index)

Dodaje określony składnik do tego kontenera na podanej pozycji.

3

void add(Component comp, Object constraints)

Dodaje określony składnik na końcu tego kontenera.

4

void add(Component comp, Object constraints, int index)

Dodaje określony składnik do tego kontenera z określonymi ograniczeniami w określonym indeksie.

5

Component add(String name, Component comp)

Dodaje określony składnik do tego kontenera.

6

void addContainerListener(ContainerListener l)

Dodaje określony odbiornik kontenera, aby odbierać zdarzenia kontenera z tego kontenera.

7

protected void addImpl(Component comp, Object constraints, int index)

Dodaje określony składnik do tego kontenera o określonym indeksie.

8

void addNotify()

Umożliwia wyświetlanie tego kontenera, łącząc go z natywnym zasobem ekranu.

9

void addPropertyChangeListener(PropertyChangeListener listener)

Dodaje PropertyChangeListener do listy detektorów.

10

void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)

Dodaje PropertyChangeListener do listy detektorów dla określonej właściwości.

11

void applyComponentOrientation(ComponentOrientation o)

Ustawia właściwość ComponentOrientation tego kontenera i wszystkich zawartych w nim składników.

12

boolean areFocusTraversalKeysSet(int id)

Zwraca, czy zestaw kluczy przejścia fokusa dla danej operacji przejścia fokusa został jawnie zdefiniowany dla tego kontenera.

13

int countComponents()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getComponentCount ().

14

void deliverEvent(Event e)

Przestarzałe. Od wersji JDK 1.1, zastąpione przez dispatchEvent (AWTEvent e)

15

void doLayout()

Powoduje, że ten kontener układa swoje komponenty.

16

Component findComponentAt(int x, int y)

Lokalizuje widoczny składnik podrzędny, który zawiera określoną pozycję.

17

Component findComponentAt(Point p)

Lokalizuje widoczny składnik podrzędny zawierający określony punkt.

18

float getAlignmentX()

Zwraca wyrównanie wzdłuż osi x.

19

float getAlignmentY()

Zwraca wyrównanie wzdłuż osi y.

20

Component getComponent(int n)

Pobiera n-ty składnik w tym kontenerze.

21

Component getComponentAt(int x, int y)

Lokalizuje komponent, który zawiera pozycję x, y.

22

Component getComponentAt(Point p)

Pobiera składnik zawierający określony punkt.

23

int getComponentCount()

Pobiera liczbę składników w tym panelu.

24

Component[] getComponents()

Pobiera wszystkie składniki w tym kontenerze.

25

int getComponentZOrder(Component comp)

Zwraca indeks kolejności Z składnika wewnątrz kontenera.

26

ContainerListener[] getContainerListeners()

Zwraca tablicę wszystkich detektorów kontenera zarejestrowanych w tym kontenerze.

27

Set<AWTKeyStroke> getFocusTraversalKeys(int id)

Zwraca zestaw kluczy przejścia fokusa dla danej operacji przejścia dla tego kontenera.

28

FocusTraversalPolicy getFocusTraversalPolicy()

Zwraca zasadę przechodzenia fokusu, która będzie zarządzać przechodzeniem przez klawiaturę elementów podrzędnych tego kontenera lub wartość null, jeśli ten kontener nie jest katalogiem głównym cyklu aktywności.

29

Insets getInsets()

Określa wstawki tego kontenera, które wskazują wielkość obramowania kontenera.

30

LayoutManager getLayout()

Pobiera menedżera układu dla tego kontenera.

31

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym kontenerze.

32

Dimension getMaximumSize()

Zwraca maksymalny rozmiar tego kontenera.

33

Dimension getMinimumSize()

Zwraca minimalny rozmiar tego pojemnika.

34

Point getMousePosition(boolean allowChildren)

Zwraca pozycję wskaźnika myszy w przestrzeni współrzędnych tego kontenera, jeśli kontener znajduje się pod wskaźnikiem myszy, w przeciwnym razie zwraca wartość null.

35

Dimension getPreferredSize()

Zwraca preferowany rozmiar tego kontenera.

36

Insets insets()

Przestarzałe. Od wersji JDK 1.1, zastąpione przez getInsets ().

37

void invalidate()

Unieważnia kontener.

38

boolean isAncestorOf(Component c)

Sprawdza, czy składnik jest zawarty w hierarchii komponentów tego kontenera.

39

boolean isFocusCycleRoot()

Zwraca, czy ten kontener jest elementem głównym cyklu przechodzenia przez fokus.

40

boolean isFocusCycleRoot(Container container)

Zwraca, czy określony Container jest głównym elementem głównym cyklu aktywności tego kontenera.

41

boolean isFocusTraversalPolicyProvider()

Zwraca, czy ten kontener zapewnia zasady przechodzenia fokusu.

42

boolean isFocusTraversalPolicySet()

Zwraca czy zasady przechodzenia fokusu zostały jawnie ustawione dla tego kontenera.

43

void layout()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez doLayout ().

44

void list(PrintStream out, int indent)

Drukuje listę tego kontenera do określonego strumienia wyjściowego.

45

void list(PrintWriter out, int indent)

Drukuje listę, zaczynając od określonego wcięcia, do określonego modułu zapisywania wydruku.

46

Component locate(int x, int y)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getComponentAt (int, int).

47

Dimension minimumSize()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getMinimumSize ().

48

void paint(Graphics g)

Maluje pojemnik.

49

void paintComponents(Graphics g)

Maluje każdy ze składników w tym pojemniku.

50

protected String paramString()

Zwraca ciąg znaków reprezentujący stan tego kontenera.

51

Dimension preferredSize()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getPreferredSize ().

52

void print(Graphics g)

Drukuje kontener.

53

void printComponents(Graphics g)

Drukuje każdy ze składników w tym kontenerze.

54

protected void processContainerEvent(ContainerEvent e)

Przetwarza zdarzenia kontenera występujące w tym kontenerze, wysyłając je do dowolnych zarejestrowanych obiektów ContainerListener.

55

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia w tym kontenerze.

56

void remove(Component comp)

Usuwa określony składnik z tego kontenera.

57

void remove(int index)

Usuwa składnik określony przez indeks z tego kontenera.

58

void removeAll()

Usuwa wszystkie komponenty z tego kontenera.

59

void removeContainerListener(ContainerListener l)

Usuwa określony detektor kontenera, aby nie odbierał już zdarzeń kontenera z tego kontenera.

60

void removeNotify()

Sprawia, że ​​ten kontener jest niewyświetlany, usuwając jego połączenie z jego natywnym zasobem ekranu.

61

void setComponentZOrder(Component comp, int index)

Przenosi określony składnik do określonego indeksu kolejności z w kontenerze.

62

void setFocusCycleRoot(boolean focusCycleRoot)

Określa, czy ten kontener jest katalogiem głównym cyklu przeglądania fokusu.

63

void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)

Ustawia klucze przejścia fokusa dla danej operacji przejścia dla tego kontenera.

64

void setFocusTraversalPolicy(FocusTraversalPolicy policy)

Ustawia zasady przechodzenia fokusa, które będą zarządzać przechodzeniem przez klawiaturę elementów podrzędnych tego kontenera, jeśli ten kontener jest katalogiem głównym cyklu fokusu.

65

void setFocusTraversalPolicyProvider(boolean provider)

Określa, czy ten kontener będzie używany do zapewniania zasad przechodzenia fokusu.

66

void setFont(Font f)

Ustawia czcionkę tego kontenera.

67

void setLayout(LayoutManager mgr)

Ustawia menedżera układu dla tego kontenera.

68

void transferFocusBackward()

Przenosi fokus do poprzedniego składnika, tak jakby ten składnik był właścicielem fokusa.

69

void transferFocusDownCycle()

Przenosi fokus w dół o jeden cykl przechodzenia fokusu.

70

void update(Graphics g)

Aktualizuje kontener.

71

void validate()

Weryfikuje ten kontener i wszystkie jego składniki podrzędne.

72

protected void validateTree()

Rekurencyjnie opuszcza drzewo kontenera i ponownie oblicza układ dla wszystkich poddrzew oznaczonych jako wymagające (oznaczonych jako nieprawidłowe).

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Component

  • java.lang.Object

Klasa panelu AWT

Wprowadzenie

Klasa Panelto najprostsza klasa kontenera. Zapewnia przestrzeń, w której aplikacja może dołączyć dowolny inny komponent, w tym inne panele. Używa FlowLayout jako domyślnego menedżera układu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Panel klasa:

public class Panel
   extends Container
      implements Accessible

Konstruktory klas

SN Konstruktor i opis
1

Panel()

Tworzy nowy panel przy użyciu domyślnego menedżera układu.

2

Panel(LayoutManager layout)

Tworzy nowy panel z określonym menedżerem układu.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Tworzy równorzędny element panelu.

2

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym panelem.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Container

  • java.awt.Component

  • java.lang.Object

Przykład panelu

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtContainerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtContainerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtContainerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtContainerDemo  awtContainerDemo = new AwtContainerDemo();          
      awtContainerDemo.showPanelDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);
   
      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showPanelDemo(){
      headerLabel.setText("Container in action: Panel");      

      Panel panel = new Panel();
      panel.setBackground(Color.magenta);
      panel.setLayout(new FlowLayout());        
      panel.add(msglabel);

      controlPanel.add(panel);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtContainerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtContainerDemo

Sprawdź następujące dane wyjściowe

Klasa ramy AWT

Wprowadzenie

Klasa Frameto okno najwyższego poziomu z obramowaniem i tytułem. Używa BorderLayout jako domyślnego menedżera układu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Frame klasa:

public class Frame
   extends Window
      implements MenuContainer

Pole

Poniżej znajdują się pola dla java.awt.Frame klasa:

  • static float BOTTOM_ALIGNMENT - Stała łatwości użycia dla getAlignmentY.

  • static int CROSSHAIR_CURSOR - wycofane. zastąpiony przez Cursor.CROSSHAIR_CURSOR.

  • static int DEFAULT_CURSOR - wycofane. zastąpiony przez Cursor.DEFAULT_CURSOR.

  • static int E_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.E_RESIZE_CURSOR.

  • static int HAND_CURSOR - wycofane. zastąpione przez Cursor.HAND_CURSOR.

  • static int ICONIFIED - Ten bit stanu wskazuje, że ramka jest oznaczona ikoną.

  • static int MAXIMIZED_BOTH - Ta maska ​​bitowa stanu wskazuje, że ramka jest w pełni zmaksymalizowana (to jest zarówno w poziomie, jak iw pionie).

  • static int MAXIMIZED_HORIZ - Ten bit stanu wskazuje, że ramka jest zmaksymalizowana w kierunku poziomym.

  • static int MAXIMIZED_VERT - Ten bit stanu wskazuje, że ramka jest zmaksymalizowana w kierunku pionowym.

  • static int MOVE_CURSOR - wycofane. zastąpiony przez Cursor.MOVE_CURSOR.

  • static int N_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.N_RESIZE_CURSOR.

  • static int NE_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.NE_RESIZE_CURSOR.

  • static int NORMAL - Ramka jest w stanie „normalnym”.

  • static int NW_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.NW_RESIZE_CURSOR.

  • static int S_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.S_RESIZE_CURSOR.

  • static int SE_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.SE_RESIZE_CURSOR.

  • static int SW_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.SW_RESIZE_CURSOR.

  • static int TEXT_CURSOR - wycofane. zastąpiony przez Cursor.TEXT_CURSOR.

  • static int W_RESIZE_CURSOR - wycofane. zastąpiony przez Cursor.W_RESIZE_CURSOR.

  • static int WAIT_CURSOR - wycofane. zastąpiony przez Cursor.WAIT_CURSOR.

Konstruktory klas

SN Konstruktor i opis
1

Frame()

Konstruuje nowe wystąpienie Frame, które jest początkowo niewidoczne.

2

Frame(GraphicsConfiguration gc)

Konstruuje nową, początkowo niewidoczną ramkę z określonym GraphicsConfiguration.

3

Frame(String title)

Konstruuje nowy, początkowo niewidoczny obiekt Frame o określonym tytule.

4

Frame(String title, GraphicsConfiguration gc)

Konstruuje nowy, początkowo niewidoczny obiekt Frame z określonym tytułem i GraphicsConfiguration.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Umożliwia wyświetlanie tej ramki poprzez połączenie jej z natywnym zasobem ekranu.

2

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tą ramką.

3

int getCursorType()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez Component.getCursor ().

4

int getExtendedState()

Pobiera stan tej ramki.

5

static Frame[] getFrames()

Zwraca tablicę wszystkich ramek utworzonych przez tę aplikację.

6

Image getIconImage()

Zwraca obraz do wyświetlenia jako ikonę dla tej ramki.

7

Rectangle getMaximizedBounds()

Pobiera zmaksymalizowane granice dla tej klatki.

8

MenuBar getMenuBar()

Pobiera pasek menu dla tej ramki.

9

int getState()

Pobiera stan tej ramki (przestarzałe).

10

String getTitle()

Pobiera tytuł ramki.

11

boolean isResizable()

Wskazuje, czy rozmiar tej ramki jest zmieniany przez użytkownika.

12

boolean isUndecorated()

Wskazuje, czy ta ramka nie jest ozdobiona.

13

protected String paramString()

Zwraca ciąg znaków reprezentujący stan tej ramki.

14

void remove(MenuComponent m)

Usuwa określony pasek menu z tej ramki.

15

void removeNotify()

Sprawia, że ​​ta ramka jest niewyświetlana, usuwając jej połączenie z jej natywnym zasobem ekranu.

16

void setCursor(int cursorType)

Przestarzałe. Od wersji JDK 1.1, zastąpiony przez Component.setCursor (Cursor).

17

void setExtendedState(int state)

Ustawia stan tej ramki.

18

void setIconImage(Image image)

Ustawia wyświetlanie obrazu jako ikony dla tego okna.

19

void setMaximizedBounds(Rectangle bounds)

Ustawia zmaksymalizowane granice dla tej klatki.

20

void setMenuBar(MenuBar mb)

Ustawia pasek menu dla tej ramki na określony pasek menu.

21

void setResizable(boolean resizable)

Określa, czy użytkownik może zmieniać rozmiar tej klatki.

22

void setState(int state)

Ustawia stan tej ramki (przestarzałe).

23

void setTitle(String title)

Ustawia tytuł tej klatki na określony ciąg.

24

void setUndecorated(boolean undecorated)

Wyłącza lub włącza dekoracje dla tej ramki.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Window

  • java.awt.Container

  • java.awt.Component

  • java.lang.Object

Przykład ramki

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtContainerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtContainerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtContainerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtContainerDemo  awtContainerDemo = new AwtContainerDemo();          
      awtContainerDemo.showFrameDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);
   
      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }
   
   private void showFrameDemo(){
      headerLabel.setText("Container in action: Frame");   

      final Frame frame = new Frame();
      frame.setSize(300, 300);
      frame.setLayout(new FlowLayout());       
      frame.add(msglabel);
      frame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            frame.dispose();
         }        
      });    
      Button okButton = new Button("Open a Frame");

      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            statusLabel.setText("A Frame shown to the user.");
            frame.setVisible(true);
         }
      });
      controlPanel.add(okButton);

      mainFrame.setVisible(true);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtContainerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtContainerDemo

Sprawdź następujące dane wyjściowe

Klasa okna AWT

Wprowadzenie

Klasa Windowto okno najwyższego poziomu bez obramowania i paska menu. Używa BorderLayout jako domyślnego menedżera układu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Window klasa:

public class Window
   extends Container
      implements Accessible

Konstruktory klas

SN Konstruktor i opis
1

Window(Frame owner)

Konstruuje nowe, początkowo niewidoczne okno z określoną ramką jako jego właścicielem.

2

Window(Window owner)

Konstruuje nowe, początkowo niewidoczne okno z określonym Window jako jego właścicielem.

3

Window(Window owner, GraphicsConfiguration gc)

Konstruuje nowe, początkowo niewidoczne okno z określonym oknem właściciela i GraphicsConfiguration urządzenia ekranu.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Umożliwia wyświetlanie tego okna przez utworzenie połączenia z jego natywnym zasobem ekranu.

2

void addPropertyChangeListener(PropertyChangeListener listener)

Dodaje PropertyChangeListener do listy detektorów.

3

void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)

Dodaje PropertyChangeListener do listy detektorów dla określonej właściwości.

4

void addWindowFocusListener(WindowFocusListener l)

Dodaje określony detektor fokusu okna, aby odbierać zdarzenia okna z tego okna.

5

void addWindowListener(WindowListener l)

Dodaje określony detektor okna, aby odbierać zdarzenia okna z tego okna.

6

void addWindowStateListener(WindowStateListener l)

Dodaje określony detektor stanu okna, aby odbierać zdarzenia okna z tego okna.

7

void applyResourceBundle(ResourceBundle rb)

Przestarzałe. Od J2SE 1.4 zastąpione przez Component.applyComponentOrientation.

8

void applyResourceBundle(String rbName)

Przestarzałe. Od J2SE 1.4 zastąpione przez Component.applyComponentOrientation.

9

void createBufferStrategy(int numBuffers)

Tworzy nową strategię wielokrotnego buforowania w tym komponencie.

10

void createBufferStrategy(int numBuffers, BufferCapabilities caps)

Tworzy nową strategię wielokrotnego buforowania tego składnika z wymaganymi możliwościami buforowania.

11

void dispose()

Zwalnia wszystkie natywne zasoby ekranu używane przez to okno, jego składniki podrzędne i wszystkie należące do niego elementy podrzędne.

12

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym oknem.

13

BufferStrategy getBufferStrategy()

Zwraca BufferStrategy używaną przez ten składnik.

14

boolean getFocusableWindowState()

Zwraca, czy to okno może stać się oknem fokusowym, jeśli spełnia inne wymagania opisane w isFocusableWindow.

15

Container getFocusCycleRootAncestor()

Zawsze zwraca wartość null, ponieważ system Windows nie ma przodków; reprezentują szczyt hierarchii komponentów.

16

Component getFocusOwner()

Zwraca składnik potomny tego okna, który ma fokus, jeśli to okno jest fokus; w przeciwnym razie zwraca null.

17

Set<AWTKeyStroke> getFocusTraversalKeys(int id)

Pobiera klucz przejścia fokusa dla tego okna.

18

GraphicsConfiguration getGraphicsConfiguration()

Ta metoda zwraca GraphicsConfiguration używaną przez to Window.

19

List<Image> getIconImages()

Zwraca sekwencję obrazów do wyświetlenia jako ikona dla tego okna.

20

InputContext getInputContext()

Pobiera kontekst wejściowy dla tego okna.

21

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym oknie.

22

Locale getLocale()

Pobiera obiekt Locale, który jest skojarzony z tym oknem, jeśli ustawienia regionalne zostały ustawione.

23

Dialog.ModalExclusionType getModalExclusionType()

Zwraca typ wykluczenia modalnego tego okna.

24

Component getMostRecentFocusOwner()

Zwraca składnik podrzędny tego okna, który otrzyma fokus, gdy to okno jest fokus.

25

Window[] getOwnedWindows()

Zwraca tablicę zawierającą wszystkie okna, które aktualnie posiada to okno.

26

Window getOwner()

Zwraca właściciela tego okna.

27

static Window[] getOwnerlessWindows()

Zwraca tablicę wszystkich systemów Windows utworzonych przez tę aplikację, które nie mają właściciela.

28

Toolkit getToolkit()

Zwraca zestaw narzędzi tej ramki.

29

String getWarningString()

Pobiera ciąg ostrzeżenia, który jest wyświetlany w tym oknie.

30

WindowFocusListener[] getWindowFocusListeners()

Zwraca tablicę wszystkich detektorów fokusa okna zarejestrowanych w tym oknie.

31

WindowListener[] getWindowListeners()

Zwraca tablicę wszystkich detektorów okien zarejestrowanych w tym oknie.

32

static Window[] getWindows()

Zwraca tablicę wszystkich systemów Windows, zarówno należących do właściciela, jak i bez właściciela, utworzonych przez tę aplikację.

33

WindowStateListener[] getWindowStateListeners()

Zwraca tablicę wszystkich detektorów stanu okna zarejestrowanych w tym oknie.

34

void hide()

Przestarzałe. Od wersji 1.5 JDK zastąpione przez setVisible (boolean).

35

boolean isActive()

Zwraca, czy to okno jest aktywne.

36

boolean isAlwaysOnTop()

Zwraca, czy to okno jest oknem zawsze na wierzchu.

37

boolean isAlwaysOnTopSupported()

Zwraca informację, czy tryb zawsze na wierzchu jest obsługiwany dla tego okna.

38

boolean isFocusableWindow()

Zwraca, czy to okno może stać się aktywnym oknem, czyli czy to okno lub którykolwiek z jego składników podrzędnych może stać się właścicielem fokusa.

39

boolean isFocusCycleRoot()

Zawsze zwraca prawdę, ponieważ wszystkie systemy Windows muszą być korzeniami cyklu przejścia przez fokus.

40

boolean isFocused()

Zwraca, czy to okno jest aktywne.

41

boolean isLocationByPlatform()

Zwraca wartość true, jeśli to okno pojawi się w domyślnej lokalizacji dla natywnego systemu okienkowego następnym razem, gdy to okno stanie się widoczne.

42

boolean isShowing()

Sprawdza, czy to okno jest wyświetlane na ekranie.

43

void pack()

Powoduje, że rozmiar okna jest dopasowany do preferowanego rozmiaru i układów jego składników podrzędnych.

44

void paint(Graphics g)

Maluje pojemnik.

45

boolean postEvent(Event e)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez dispatchEvent (AWTEvent).

46

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia w tym oknie.

47

protected void processWindowEvent(WindowEvent e)

Przetwarza zdarzenia okna występujące w tym oknie, wysyłając je do dowolnych zarejestrowanych obiektów WindowListener.

48

protected void processWindowFocusEvent(WindowEvent e)

Przetwarza zdarzenie skupienia okna występujące w tym oknie, wysyłając je do dowolnego zarejestrowanego obiektu WindowFocusListener.

49

protected void processWindowStateEvent(WindowEvent e)

Przetwarza zdarzenie stanu okna występujące w tym oknie, wysyłając je do dowolnych zarejestrowanych obiektów WindowStateListener.

50

void removeNotify()

Sprawia, że ​​ten kontener jest niewyświetlany, usuwając jego połączenie z jego natywnym zasobem ekranu.

51

void removeWindowFocusListener(WindowFocusListener l)

Usuwa określony detektor fokusu okna, aby nie odbierał już zdarzeń okna z tego okna.

52

void removeWindowListener(WindowListener l)

Usuwa określony detektor okien, aby nie odbierał już zdarzeń okna z tego okna.

53

void removeWindowStateListener(WindowStateListener l)

Usuwa określony detektor stanu okna, aby nie odbierał już zdarzeń okna z tego okna.

54

void reshape(int x, int y, int width, int height)

Przestarzałe. Od wersji 1.1 JDK zastąpione przez setBounds (int, int, int, int).

55

void setAlwaysOnTop(boolean alwaysOnTop)

Określa, czy to okno powinno zawsze znajdować się nad innymi oknami.

56

void setBounds(int x, int y, int width, int height)

Przenosi i zmienia rozmiar tego komponentu.

57

void setBounds(Rectangle r)

Przenosi i zmienia rozmiar tego komponentu, aby był zgodny z nowym prostokątem ograniczającym r.

58

void setCursor(Cursor cursor)

Ustaw obraz kursora na określony kursor.

59

void setFocusableWindowState(boolean focusableWindowState)

Ustawia, czy to okno może stać się oknem fokusowym, jeśli spełnia inne wymagania opisane w isFocusableWindow.

60

void setFocusCycleRoot(boolean focusCycleRoot)

Nic nie robi, ponieważ system Windows zawsze musi być korzeniem cyklu przechodzenia przez fokus.

61

void setIconImage(Image image)

Ustawia wyświetlanie obrazu jako ikony dla tego okna.

62

void setIconImages(List<? extends Image> icons)

Ustawia sekwencję obrazów, które mają być wyświetlane jako ikona dla tego okna.

63

void setLocationByPlatform(boolean locationByPlatform)

Określa, czy to okno powinno pojawić się w domyślnej lokalizacji dla natywnego systemu okienkowego, czy w bieżącej lokalizacji (zwróconej przez getLocation) następnym razem, gdy okno stanie się widoczne.

64

void setLocationRelativeTo(Component c)

Ustawia położenie okna względem określonego komponentu.

65

void setMinimumSize(Dimension minimumSize)

Ustawia minimalny rozmiar tego okna na stałą wartość.

66

void setModalExclusionType(Dialog.ModalExclusionType exclusionType)

Określa typ wykluczenia modalnego dla tego okna.

67

void setSize(Dimension d)

Zmienia rozmiar tego komponentu, tak aby miał szerokość d. Szerokość i wysokość d. Wysokość.

68

void setSize(int width, int height)

Zmienia rozmiar tego komponentu, tak aby miał szerokość, szerokość i wysokość, wysokość.

69

void setVisible(boolean b)

Pokazuje lub ukrywa to okno w zależności od wartości parametru b.

70

void show()

Przestarzałe. Od wersji 1.5 JDK zastąpione przez setVisible (boolean).

71

void toBack()

Jeśli to okno jest widoczne, wysyła to okno do tyłu i może spowodować utratę aktywności lub aktywacji, jeśli jest to aktywne lub aktywne okno.

72

void toFront()

Jeśli to okno jest widoczne, przesuwa je na wierzch i może uczynić je oknem, na którym jest skupione.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.Window

  • java.awt.Container

  • java.awt.Component

  • java.lang.Object

Przykład okna

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AwtContainerDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtContainerDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;
   private Label msglabel;

   public AwtContainerDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtContainerDemo  awtContainerDemo = new AwtContainerDemo();          
      awtContainerDemo.showFrameDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);
   
      msglabel = new Label();
      msglabel.setAlignment(Label.CENTER);
      msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }
   
   private void showWindowDemo(){
      headerLabel.setText("Container in action: Window");   
      final MessageWindow window = 
         new MessageWindow(mainFrame,
         "Welcome to TutorialsPoint AWT Tutorial.");

      Button okButton = new Button("Open a Window");
      okButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
            window.setVisible(true);
            statusLabel.setText("A Window shown to the user.");                
         }
      });
      controlPanel.add(okButton);
      mainFrame.setVisible(true);  
   }

   class MessageWindow extends Window{
      private String message; 

      public MessageWindow(Frame parent, String message) { 
         super(parent);               
         this.message = message; 
         setSize(300, 300);       
         setLocationRelativeTo(parent);
         setBackground(Color.gray);
      }

      public void paint(Graphics g) { 
         super.paint(g);
         g.drawRect(0,0,getSize().width - 1,getSize().height - 1); 
         g.drawString(message,50,150); 
      } 
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtContainerDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtContainerDemo

Sprawdź następujące dane wyjściowe

Klasy menu AWT

Jak wiemy, każde okno najwyższego poziomu ma powiązany z nim pasek menu. Ten pasek menu składa się z różnych opcji menu dostępnych dla użytkownika końcowego. Ponadto każdy wybór zawiera listę opcji nazywaną menu rozwijanymi. Kontrolki Menu i MenuItem są podklasą klasy MenuComponent.

Hiearchia menu

AWT MenuComponent Class

Wprowadzenie

MenuComponent jest klasą abstrakcyjną i jest klasą nadrzędną dla wszystkich komponentów związanych z menu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.MenuComponent klasa:

public abstract class MenuComponent
   extends Object
      implements Serializable

Konstruktory klas

SN Konstruktor i opis
1

MenuComponent()

Tworzy MenuComponent.

Metody klasowe

void dispatchEvent (AWTEvent e)
SN Metoda i opis
1

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym MenuComponent.

2

Font getFont()

Pobiera czcionkę używaną dla tego składnika menu.

3

String getName()

Pobiera nazwę składnika menu.

4

MenuContainer getParent()

Zwraca kontener nadrzędny dla tego składnika menu.

5

java.awt.peer.MenuComponentPeer getPeer()

Przestarzałe. Od wersji JDK 1.1 programy nie powinny bezpośrednio manipulować rówieśnikami.

6

protected Object getTreeLock()

Pobiera obiekt blokujący tego składnika (obiekt, który jest właścicielem monitora synchronizacji wątków) dla operacji drzewa komponentów i układu AWT.

7

protected String paramString()

Zwraca ciąg reprezentujący stan tego MenuComponent.

8

boolean postEvent(Event evt)

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez dispatchEvent.

9

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia występujące w tym elemencie menu.

10

void removeNotify()

Usuwa element równorzędny składnika menu.

11

void setFont(Font f)

Ustawia czcionkę używaną w tym elemencie menu na określoną czcionkę.

12

void setName(String name)

Ustawia nazwę składnika na określony ciąg.

13

String toString()

Zwraca reprezentację tego składnika menu jako ciąg.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Klasa paska menu AWT

Wprowadzenie

Klasa MenuBar udostępnia pasek menu powiązany z ramką i jest specyficzny dla platformy.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.MenuBar klasa:

public class MenuBar
   extends MenuComponent
      implements MenuContainer, Accessible

Konstruktory klas

SN Konstruktor i opis
1

MenuBar()

Tworzy nowy pasek menu.

Metody klasowe

SN Metoda i opis
1

void dispatchEvent(AWTEvent e)

2

Menu add(Menu m)

Dodaje określone menu do paska menu.

3

void addNotify()

Tworzy równorzędny element paska menu.

4

int countMenus()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getMenuCount ().

5

void deleteShortcut(MenuShortcut s)

Usuwa określony skrót menu.

6

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym MenuBar.

7

Menu getHelpMenu()

Pobiera menu pomocy na pasku menu.

8

Menu getMenu(int i)

Pobiera określone menu.

9

int getMenuCount()

Pobiera liczbę menu na pasku menu.

10

MenuItem getShortcutMenuItem(MenuShortcut s)

Pobiera wystąpienie MenuItem skojarzone z określonym obiektem MenuShortcut lub null, jeśli żaden z elementów menu zarządzanych przez ten pasek menu nie jest skojarzony z określonym skrótem menu.

11

void remove(int index)

Usuwa menu znajdujące się pod określonym indeksem z tego paska menu.

12

void remove(MenuComponent m)

Usuwa określony składnik menu z tego paska menu.

13

void removeNotify()

Usuwa element równorzędny z paska menu.

14

void setHelpMenu(Menu m)

Ustawia określone menu jako menu pomocy tego paska menu.

15

Enumeration shortcuts()

Pobiera wyliczenie wszystkich skrótów menu, którymi zarządza ten pasek menu.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.MenuComponent

  • java.lang.Object

Przykład paska menu

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTMenuDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AWTMenuDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AWTMenuDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AWTMenuDemo  awtMenuDemo = new AWTMenuDemo();     
      awtMenuDemo.showMenuDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMenuDemo(){
      //create a menu bar
      final MenuBar menuBar = new MenuBar();

      //create menus
      Menu fileMenu = new Menu("File");
      Menu editMenu = new Menu("Edit"); 
      final Menu aboutMenu = new Menu("About");

      //create menu items
      MenuItem newMenuItem = 
         new MenuItem("New",new MenuShortcut(KeyEvent.VK_N));
      newMenuItem.setActionCommand("New");

      MenuItem openMenuItem = new MenuItem("Open");
      openMenuItem.setActionCommand("Open");

      MenuItem saveMenuItem = new MenuItem("Save");
      saveMenuItem.setActionCommand("Save");

      MenuItem exitMenuItem = new MenuItem("Exit");
      exitMenuItem.setActionCommand("Exit");

      MenuItem cutMenuItem = new MenuItem("Cut");
      cutMenuItem.setActionCommand("Cut");

      MenuItem copyMenuItem = new MenuItem("Copy");
      copyMenuItem.setActionCommand("Copy");

      MenuItem pasteMenuItem = new MenuItem("Paste");
      pasteMenuItem.setActionCommand("Paste");
   
      MenuItemListener menuItemListener = new MenuItemListener();

      newMenuItem.addActionListener(menuItemListener);
      openMenuItem.addActionListener(menuItemListener);
      saveMenuItem.addActionListener(menuItemListener);
      exitMenuItem.addActionListener(menuItemListener);
      cutMenuItem.addActionListener(menuItemListener);
      copyMenuItem.addActionListener(menuItemListener);
      pasteMenuItem.addActionListener(menuItemListener);

      final CheckboxMenuItem showWindowMenu = 
         new CheckboxMenuItem("Show About", true);
      showWindowMenu.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            if(showWindowMenu.getState()){
               menuBar.add(aboutMenu);
            }else{
               menuBar.remove(aboutMenu);
            }
         }
      });

      //add menu items to menus
      fileMenu.add(newMenuItem);
      fileMenu.add(openMenuItem);
      fileMenu.add(saveMenuItem);
      fileMenu.addSeparator();
      fileMenu.add(showWindowMenu);
      fileMenu.addSeparator();
      fileMenu.add(exitMenuItem);

      editMenu.add(cutMenuItem);
      editMenu.add(copyMenuItem);
      editMenu.add(pasteMenuItem);

      //add menu to menubar
      menuBar.add(fileMenu);
      menuBar.add(editMenu);
      menuBar.add(aboutMenu);

      //add menubar to the frame
      mainFrame.setMenuBar(menuBar);
      mainFrame.setVisible(true);  
   }

   class MenuItemListener implements ActionListener {
      public void actionPerformed(ActionEvent e) {            
         statusLabel.setText(e.getActionCommand() 
            + " MenuItem clicked.");
      }    
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTMenuDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTMenuDemo

Sprawdź następujące dane wyjściowe

AWT MenuItem Class

Wprowadzenie

Klasa MenuBar reprezentuje rzeczywisty element w menu. Wszystkie elementy w menu powinny pochodzić z klasy MenuItem lub jednej z jej podklas. Domyślnie zawiera prostą, oznaczoną pozycję menu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.MenuItem klasa:

public class MenuItem
   extends MenuComponent
      implements Accessible

Konstruktory klas

SN Konstruktor i opis
1

MenuItem()

Konstruuje nowe MenuItem z pustą etykietą i bez skrótu klawiaturowego.

2

MenuItem(String label)

Konstruuje nowe MenuItem z określoną etykietą i bez skrótu klawiaturowego.

3

MenuItem(String label, MenuShortcut s)

Utwórz element menu ze skojarzonym skrótem klawiaturowym.

Metody klasowe

SN Metoda i opis
1

void addActionListener(ActionListener l)

Dodaje określony detektor akcji, aby otrzymywać zdarzenia akcji z tego elementu menu.

2

void addNotify()

Tworzy równorzędny element menu.

3

void deleteShortcut()

Usuń dowolny obiekt MenuShortcut powiązany z tą pozycją menu.

4

void disable()

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez setEnabled (boolean).

5

protected void disableEvents(long eventsToDisable)

Wyłącza dostarczanie zdarzeń do tej pozycji menu dla zdarzeń zdefiniowanych przez określony parametr maski zdarzenia.

6

void enable()

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez setEnabled (boolean).

7

void enable(boolean b)

Przestarzałe. Od wersji 1.1 JDK, zastąpione przez setEnabled (boolean).

8

protected void enableEvents(long eventsToEnable)

Włącza dostarczanie zdarzeń do tej pozycji menu, aby zdarzenia były definiowane przez określony parametr maski zdarzenia.

9

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym MenuItem.

10

String getActionCommand()

Pobiera nazwę polecenia zdarzenia akcji, które jest wyzwalane przez ten element menu.

11

ActionListener[] getActionListeners()

Zwraca tablicę wszystkich detektorów akcji zarejestrowanych w tej pozycji menu.

12

String getLabel()

Pobiera etykietę dla tego elementu menu.

13

EventListener[] getListeners(Class listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym MenuItem.

14

MenuShortcut getShortcut()

Pobierz obiekt MenuShortcut skojarzony z tą pozycją menu.

15

boolean isEnabled()

Sprawdza, czy ta pozycja menu jest włączona.

16

String paramString()

Zwraca ciąg reprezentujący stan tego MenuItem.

17

protected void processActionEvent(ActionEvent e)

Przetwarza zdarzenia akcji występujące w tej pozycji menu, wysyłając je do dowolnych zarejestrowanych obiektów ActionListener.

18

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia w tej pozycji menu.

19

void removeActionListener(ActionListener l)

Usuwa określony detektor akcji, aby nie odbierał już zdarzeń akcji z tego elementu menu.

20

void setActionCommand(String command)

Ustawia nazwę polecenia zdarzenia akcji uruchamianego przez ten element menu.

21

void setEnabled(boolean b)

Określa, czy można wybrać tę pozycję menu, czy nie.

22

void setLabel(String label)

Ustawia etykietę dla tej pozycji menu na określoną etykietę.

23

void setShortcut(MenuShortcut s)

Ustaw obiekt MenuShortcut skojarzony z tą pozycją menu.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.MenuComponent

  • java.lang.Object

Przykład MenuItem

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTMenuDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AWTMenuDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AWTMenuDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AWTMenuDemo  awtMenuDemo = new AWTMenuDemo();     
      awtMenuDemo.showMenuDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMenuDemo(){
      //create a menu bar
      final MenuBar menuBar = new MenuBar();

      //create menus
      Menu fileMenu = new Menu("File");
      Menu editMenu = new Menu("Edit"); 
      final Menu aboutMenu = new Menu("About");

      //create menu items
      MenuItem newMenuItem = 
         new MenuItem("New",new MenuShortcut(KeyEvent.VK_N));
      newMenuItem.setActionCommand("New");

      MenuItem openMenuItem = new MenuItem("Open");
      openMenuItem.setActionCommand("Open");

      MenuItem saveMenuItem = new MenuItem("Save");
      saveMenuItem.setActionCommand("Save");

      MenuItem exitMenuItem = new MenuItem("Exit");
      exitMenuItem.setActionCommand("Exit");

      MenuItem cutMenuItem = new MenuItem("Cut");
      cutMenuItem.setActionCommand("Cut");

      MenuItem copyMenuItem = new MenuItem("Copy");
      copyMenuItem.setActionCommand("Copy");

      MenuItem pasteMenuItem = new MenuItem("Paste");
      pasteMenuItem.setActionCommand("Paste");
   
      MenuItemListener menuItemListener = new MenuItemListener();

      newMenuItem.addActionListener(menuItemListener);
      openMenuItem.addActionListener(menuItemListener);
      saveMenuItem.addActionListener(menuItemListener);
      exitMenuItem.addActionListener(menuItemListener);
      cutMenuItem.addActionListener(menuItemListener);
      copyMenuItem.addActionListener(menuItemListener);
      pasteMenuItem.addActionListener(menuItemListener);

      final CheckboxMenuItem showWindowMenu = 
         new CheckboxMenuItem("Show About", true);
      showWindowMenu.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            if(showWindowMenu.getState()){
               menuBar.add(aboutMenu);
            }else{
               menuBar.remove(aboutMenu);
            }
         }
      });

      //add menu items to menus
      fileMenu.add(newMenuItem);
      fileMenu.add(openMenuItem);
      fileMenu.add(saveMenuItem);
      fileMenu.addSeparator();
      fileMenu.add(showWindowMenu);
      fileMenu.addSeparator();
      fileMenu.add(exitMenuItem);

      editMenu.add(cutMenuItem);
      editMenu.add(copyMenuItem);
      editMenu.add(pasteMenuItem);

      //add menu to menubar
      menuBar.add(fileMenu);
      menuBar.add(editMenu);
      menuBar.add(aboutMenu);

      //add menubar to the frame
      mainFrame.setMenuBar(menuBar);
      mainFrame.setVisible(true);  
   }

   class MenuItemListener implements ActionListener {
      public void actionPerformed(ActionEvent e) {            
         statusLabel.setText(e.getActionCommand() 
            + " MenuItem clicked.");
      }    
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTMenuDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTMenuDemo

Sprawdź następujące dane wyjściowe. (Kliknij menu Plik. Wybierz dowolną pozycję menu).

Klasa menu AWT

Wprowadzenie

Klasa Menu reprezentuje rozwijany komponent menu, który jest wdrażany z paska menu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Menu klasa:

public class Menu
   extends MenuItem
      implements MenuContainer, Accessible

Konstruktory klas

SN Konstruktor i opis
1

Menu()

Tworzy nowe menu z pustą etykietą.

2

Menu(String label)

Tworzy nowe menu z określoną etykietą.

3

Menu(String label, boolean tearOff)

Konstruuje nowe menu z określoną etykietą, wskazującą, czy można oderwać menu.

Metody klasowe

SN Metoda i opis
1

MenuItem add(MenuItem mi)

Dodaje określoną pozycję menu do tego menu.

2

void add(String label)

Dodaje element z określoną etykietą do tego menu.

3

void addNotify()

Tworzy peer menu.

4

void addSeparator()

Dodaje linię separatora lub myślnik do menu w bieżącej pozycji.

5

int countItems()

Przestarzałe. Od wersji 1.1 JDK zastąpiony przez getItemCount ().

6

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym Menu.

7

MenuItem getItem(int index)

Pobiera element znajdujący się w określonym indeksie tego menu.

8

int getItemCount()

Uzyskaj liczbę elementów w tym menu.

9

void insert(MenuItem menuitem, int index)

Wstawia element menu do tego menu w określonej pozycji.

10

void insert(String label, int index)

Wstawia element menu z określoną etykietą do tego menu w określonej pozycji.

11

void insertSeparator(int index)

Wstawia separator w określonej pozycji.

12

boolean isTearOff()

Wskazuje, czy to menu jest menu odrywania.

13

String paramString()

Zwraca ciąg znaków reprezentujący stan tego Menu.

14

void remove(int index)

Usuwa element menu o określonym indeksie z tego menu.

15

void remove(MenuComponent item)

Usuwa określoną pozycję menu z tego menu.

16

void removeAll()

Usuwa wszystkie pozycje z tego menu.

17

void removeNotify()

Usuwa równorzędny element menu.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.MenuItem

  • java.awt.MenuComponent

  • java.lang.Object

Przykład menu

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTMenuDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AWTMenuDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AWTMenuDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AWTMenuDemo  awtMenuDemo = new AWTMenuDemo();     
      awtMenuDemo.showMenuDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMenuDemo(){
      //create a menu bar
      final MenuBar menuBar = new MenuBar();

      //create menus
      Menu fileMenu = new Menu("File");
      Menu editMenu = new Menu("Edit"); 
      final Menu aboutMenu = new Menu("About");

      //create menu items
      MenuItem newMenuItem = 
         new MenuItem("New",new MenuShortcut(KeyEvent.VK_N));
      newMenuItem.setActionCommand("New");

      MenuItem openMenuItem = new MenuItem("Open");
      openMenuItem.setActionCommand("Open");

      MenuItem saveMenuItem = new MenuItem("Save");
      saveMenuItem.setActionCommand("Save");

      MenuItem exitMenuItem = new MenuItem("Exit");
      exitMenuItem.setActionCommand("Exit");

      MenuItem cutMenuItem = new MenuItem("Cut");
      cutMenuItem.setActionCommand("Cut");

      MenuItem copyMenuItem = new MenuItem("Copy");
      copyMenuItem.setActionCommand("Copy");

      MenuItem pasteMenuItem = new MenuItem("Paste");
      pasteMenuItem.setActionCommand("Paste");
   
      MenuItemListener menuItemListener = new MenuItemListener();

      newMenuItem.addActionListener(menuItemListener);
      openMenuItem.addActionListener(menuItemListener);
      saveMenuItem.addActionListener(menuItemListener);
      exitMenuItem.addActionListener(menuItemListener);
      cutMenuItem.addActionListener(menuItemListener);
      copyMenuItem.addActionListener(menuItemListener);
      pasteMenuItem.addActionListener(menuItemListener);

      final CheckboxMenuItem showWindowMenu = 
         new CheckboxMenuItem("Show About", true);
      showWindowMenu.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            if(showWindowMenu.getState()){
               menuBar.add(aboutMenu);
            }else{
               menuBar.remove(aboutMenu);
            }
         }
      });

      //add menu items to menus
      fileMenu.add(newMenuItem);
      fileMenu.add(openMenuItem);
      fileMenu.add(saveMenuItem);
      fileMenu.addSeparator();
      fileMenu.add(showWindowMenu);
      fileMenu.addSeparator();
      fileMenu.add(exitMenuItem);

      editMenu.add(cutMenuItem);
      editMenu.add(copyMenuItem);
      editMenu.add(pasteMenuItem);

      //add menu to menubar
      menuBar.add(fileMenu);
      menuBar.add(editMenu);
      menuBar.add(aboutMenu);

      //add menubar to the frame
      mainFrame.setMenuBar(menuBar);
      mainFrame.setVisible(true);  
   }

   class MenuItemListener implements ActionListener {
      public void actionPerformed(ActionEvent e) {            
         statusLabel.setText(e.getActionCommand() 
            + " MenuItem clicked.");
      }    
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTMenuDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTMenuDemo

Sprawdź następujące dane wyjściowe. (Kliknij menu Plik).

AWT CheckboxMenuItem Class

Wprowadzenie

Klasa CheckboxMenuItem reprezentuje pole wyboru, które może znajdować się w menu. Zaznaczenie pola wyboru w menu zmienia stan kontrolki zon do off lub z off do on.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.CheckboxMenuItem klasa:

public class CheckboxMenuItem
   extends MenuItem
      implements ItemSelectable, Accessible

Konstruktory klas

SN Konstruktor i opis
1

CheckboxMenuItem()

Utwórz element menu pola wyboru z pustą etykietą.

2

CheckboxMenuItem(String label)

Utwórz element menu pola wyboru z określoną etykietą.

3

CheckboxMenuItem(String label, boolean state)

Utwórz element menu pola wyboru z określoną etykietą i stanem.

Metody klasowe

SN Metoda i opis
1

void addItemListener(ItemListener l)

Dodaje określony odbiornik elementów, aby otrzymywać zdarzenia elementu z tego elementu menu pola wyboru.

2

void addNotify()

Tworzy równorzędny element pola wyboru.

3

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym CheckboxMenuItem.

4

ItemListener[] getItemListeners()

Zwraca tablicę wszystkich detektorów pozycji zarejestrowanych w tym polu wyboru menuitem.

5

<T extends EventListener> T[] getListeners(Class<T> listenerType)

Zwraca tablicę wszystkich obiektów aktualnie zarejestrowanych jako FooListeners w tym CheckboxMenuItem.

6

Object[] getSelectedObjects()

Zwraca tablicę (długość 1) zawierającą etykietę elementu menu pola wyboru lub wartość null, jeśli pole wyboru nie jest zaznaczone.

7

boolean getState()

Określa, czy stan tego elementu menu pola wyboru jest „włączony” czy „wyłączony”.

8

String paramString()

Zwraca ciąg reprezentujący stan tego CheckBoxMenuItem.

9

protected void processEvent(AWTEvent e)

Przetwarza zdarzenia w tym elemencie menu pola wyboru.

10

protected void processItemEvent(ItemEvent e)

Przetwarza zdarzenia elementu występujące w tym elemencie menu pola wyboru, wysyłając je do dowolnych zarejestrowanych obiektów ItemListener.

11

void removeItemListener(ItemListener l)

Usuwa określony detektor elementów, aby nie odbierał już zdarzeń elementu z tego elementu menu pola wyboru.

12

void setState(boolean b)

Ustawia ten element menu pola wyboru na określony stan.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.MenuItem

  • java.awt.MenuComponent

  • java.lang.Object

Przykład CheckboxMenuItem

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTMenuDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AWTMenuDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AWTMenuDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AWTMenuDemo  awtMenuDemo = new AWTMenuDemo();     
      awtMenuDemo.showMenuDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showMenuDemo(){
      //create a menu bar
      final MenuBar menuBar = new MenuBar();

      //create menus
      Menu fileMenu = new Menu("File");
      Menu editMenu = new Menu("Edit"); 
      final Menu aboutMenu = new Menu("About");

      //create menu items
      MenuItem newMenuItem = 
         new MenuItem("New",new MenuShortcut(KeyEvent.VK_N));
      newMenuItem.setActionCommand("New");

      MenuItem openMenuItem = new MenuItem("Open");
      openMenuItem.setActionCommand("Open");

      MenuItem saveMenuItem = new MenuItem("Save");
      saveMenuItem.setActionCommand("Save");

      MenuItem exitMenuItem = new MenuItem("Exit");
      exitMenuItem.setActionCommand("Exit");

      MenuItem cutMenuItem = new MenuItem("Cut");
      cutMenuItem.setActionCommand("Cut");

      MenuItem copyMenuItem = new MenuItem("Copy");
      copyMenuItem.setActionCommand("Copy");

      MenuItem pasteMenuItem = new MenuItem("Paste");
      pasteMenuItem.setActionCommand("Paste");
   
      MenuItemListener menuItemListener = new MenuItemListener();

      newMenuItem.addActionListener(menuItemListener);
      openMenuItem.addActionListener(menuItemListener);
      saveMenuItem.addActionListener(menuItemListener);
      exitMenuItem.addActionListener(menuItemListener);
      cutMenuItem.addActionListener(menuItemListener);
      copyMenuItem.addActionListener(menuItemListener);
      pasteMenuItem.addActionListener(menuItemListener);

      final CheckboxMenuItem showWindowMenu = 
         new CheckboxMenuItem("Show About", true);
      showWindowMenu.addItemListener(new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
            if(showWindowMenu.getState()){
               menuBar.add(aboutMenu);
            }else{
               menuBar.remove(aboutMenu);
            }
         }
      });

      //add menu items to menus
      fileMenu.add(newMenuItem);
      fileMenu.add(openMenuItem);
      fileMenu.add(saveMenuItem);
      fileMenu.addSeparator();
      fileMenu.add(showWindowMenu);
      fileMenu.addSeparator();
      fileMenu.add(exitMenuItem);

      editMenu.add(cutMenuItem);
      editMenu.add(copyMenuItem);
      editMenu.add(pasteMenuItem);

      //add menu to menubar
      menuBar.add(fileMenu);
      menuBar.add(editMenu);
      menuBar.add(aboutMenu);

      //add menubar to the frame
      mainFrame.setMenuBar(menuBar);
      mainFrame.setVisible(true);  
   }

   class MenuItemListener implements ActionListener {
      public void actionPerformed(ActionEvent e) {            
         statusLabel.setText(e.getActionCommand() 
            + " MenuItem clicked.");
      }    
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTMenuDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTMenuDemo

Sprawdź następujące dane wyjściowe. (Kliknij menu Plik. Odznacz opcję „Pokaż informacje”).

AWT PopupMenu Class

Wprowadzenie

Menu podręczne reprezentuje menu, które może być dynamicznie wyświetlane w określonym miejscu w komponencie.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.PopupMenu klasa:

public class CheckboxMenuItem
   extends MenuItem
      implements ItemSelectable, Accessible

Konstruktory klas

SN Konstruktor i opis
1

PopupMenu()

Tworzy nowe menu podręczne z pustą nazwą.

2

PopupMenu(String label)

Tworzy nowe menu podręczne o określonej nazwie.

Metody klasowe

SN Metoda i opis
1

void addNotify()

Tworzy element równorzędny menu podręcznego.

2

AccessibleContext getAccessibleContext()

Pobiera AccessibleContext skojarzony z tym PopupMenu.

3

MenuContainer getParent()

Zwraca kontener nadrzędny dla tego składnika menu.

4

void show(Component origin, int x, int y)

Pokazuje menu podręczne w pozycji x, y względem komponentu źródłowego.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.MenuItem

  • java.awt.MenuComponent

  • java.lang.Object

Przykład PopupMenu

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTMenuDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AWTMenuDemo {
   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AWTMenuDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AWTMenuDemo  awtMenuDemo = new AWTMenuDemo();     
      awtMenuDemo.showPopupMenuDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showPopupMenuDemo(){
      final PopupMenu editMenu = new PopupMenu("Edit"); 

      MenuItem cutMenuItem = new MenuItem("Cut");
      cutMenuItem.setActionCommand("Cut");

      MenuItem copyMenuItem = new MenuItem("Copy");
      copyMenuItem.setActionCommand("Copy");

      MenuItem pasteMenuItem = new MenuItem("Paste");
      pasteMenuItem.setActionCommand("Paste");

      MenuItemListener menuItemListener = new MenuItemListener();

      cutMenuItem.addActionListener(menuItemListener);
      copyMenuItem.addActionListener(menuItemListener);
      pasteMenuItem.addActionListener(menuItemListener);

      editMenu.add(cutMenuItem);
      editMenu.add(copyMenuItem);
      editMenu.add(pasteMenuItem);   
      
      controlPanel.addMouseListener(new MouseAdapter() {
         public void mouseClicked(MouseEvent e) {            
               editMenu.show(controlPanel, e.getX(), e.getY());
         }               
      });
      controlPanel.add(editMenu); 

      mainFrame.setVisible(true);
   }
	
   class MenuItemListener implements ActionListener {
      public void actionPerformed(ActionEvent e) {            
         statusLabel.setText(e.getActionCommand() 
            + " MenuItem clicked.");
      }    
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTMenuDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTMenuDemo

Sprawdź następujące dane wyjściowe. (Kliknij na środku ekranu.)

Klasy grafiki AWT

Elementy sterujące grafiką umożliwiają aplikacji rysowanie na komponencie lub na obrazie.

Klasa grafiki AWT

Wprowadzenie

Klasa Graphics to abstrakcyjna super klasa dla wszystkich kontekstów graficznych, która umożliwia aplikacji rysowanie na komponentach, które mogą być realizowane na różnych urządzeniach, lub również na obrazach poza ekranem.

Obiekt Graphics hermetyzuje wszystkie informacje o stanie wymagane do podstawowych operacji renderowania, które obsługuje język Java. Informacje o stanie obejmują następujące właściwości.

  • Obiekt Component, na którym ma być rysowany.

  • Źródło tłumaczenia dla współrzędnych renderowania i przycinania.

  • Bieżący klip.

  • Aktualny kolor.

  • Bieżąca czcionka.

  • Bieżąca funkcja logicznej operacji na pikselach.

  • Bieżący kolor zmiany XOR

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Graphics klasa:

public abstract class Graphics
   extends Object

Konstruktory klas

SN Konstruktor i opis
1

Graphics() ()

Konstruuje nowy obiekt Graphics.

Metody klasowe

SN Metoda i opis
1

abstract void clearRect(int x, int y, int width, int height)

Czyści określony prostokąt, wypełniając go kolorem tła bieżącej powierzchni rysunkowej.

2

abstract void clipRect(int x, int y, int width, int height)

Przecina bieżący klip z określonym prostokątem.

3

abstract void copyArea(int x, int y, int width, int height, int dx, int dy)

Kopiuje obszar komponentu na odległość określoną przez dx i dy.

4

abstract Graphics create()

Tworzy nowy obiekt Graphics, który jest kopią tego obiektu Graphics.

5

Graphics create(int x, int y, int width, int height)

Tworzy nowy obiekt Graphics na podstawie tego obiektu Graphics, ale z nowym obszarem tłumaczenia i przycinania.

6

abstract void dispose()

Usuwa ten kontekst graficzny i zwalnia wszystkie używane zasoby systemowe.

7

void draw3DRect(int x, int y, int width, int height, boolean raised)

Rysuje wyróżniony kontur 3-w określonego prostokąta.

8

abstract void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)

Rysuje kontur okrągłego lub eliptycznego łuku pokrywającego określony prostokąt.

9

void drawBytes(byte[] data, int offset, int length, int x, int y)

Rysuje tekst podany przez określoną tablicę bajtów, używając bieżącej czcionki i koloru tego kontekstu graficznego.

10

void drawChars(char[] data, int offset, int length, int x, int y)

Rysuje tekst podany przez określoną tablicę znaków, używając bieżącej czcionki i koloru tego kontekstu graficznego.

11

abstract boolean drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer)

Rysuje tyle określonego obrazu, ile jest obecnie dostępne.

12

abstract boolean drawImage(Image img, int x, int y, ImageObserver observer)

Rysuje tyle określonego obrazu, ile jest obecnie dostępne.

13

abstract boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)

Rysuje tyle określonego obrazu, ile zostało już przeskalowane w celu dopasowania do określonego prostokąta.

14

abstract boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer)

Rysuje tyle określonego obrazu, ile zostało już przeskalowane w celu dopasowania do określonego prostokąta.

15

abstract boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)

Rysuje tyle określonego obszaru określonego obrazu, ile jest obecnie dostępne, skalując go w locie, aby zmieścił się w określonym obszarze docelowej powierzchni do rysowania.

16

abstract boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)

Rysuje tyle określonego obszaru określonego obrazu, ile jest obecnie dostępne, skalując go w locie, aby zmieścił się w określonym obszarze docelowej powierzchni do rysowania.

17

abstract void drawLine(int x1, int y1, int x2, int y2)

Rysuje linię, używając bieżącego koloru, między punktami (x1, y1) i (x2, y2) w układzie współrzędnych tego kontekstu graficznego.

18

abstract void drawOval(int x, int y, int width, int height)

Rysuje kontur owalu.

19

abstract void drawPolygon(int[] xPoints, int[] yPoints, int nPoints)

Rysuje zamknięty wielokąt zdefiniowany przez tablice współrzędnych x i y.

20

void drawPolygon(Polygon p)

Rysuje kontur wielokąta zdefiniowanego przez określony obiekt Polygon.

21

abstract void drawPolyline(int[] xPoints, int[] yPoints, int nPoints)

Rysuje sekwencję połączonych linii zdefiniowanych przez tablice współrzędnych x i y.

22

void drawRect(int x, int y, int width, int height)

Rysuje kontur określonego prostokąta.

23

abstract void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)

Rysuje obrysowany prostokąt o zaokrąglonych rogach, używając bieżącego koloru tego kontekstu graficznego.

24

abstract void drawString(AttributedCharacterIterator iterator, int x, int y)

Renderuje tekst podanego iteratora stosując jego atrybuty zgodnie ze specyfikacją klasy TextAttribute.

25

abstract void drawString(String str, int x, int y)

Rysuje tekst podany przez określony ciąg, używając bieżącej czcionki i koloru tego kontekstu graficznego.

26

void fill3DRect(int x, int y, int width, int height, boolean raised)

Maluje podświetlony trójwymiarowy prostokąt wypełniony bieżącym kolorem.

27

abstract void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)

Wypełnia okrągły lub eliptyczny łuk pokrywający określony prostokąt.

28

abstract void fillOval(int x, int y, int width, int height)

Wypełnia owal ograniczony przez określony prostokąt bieżącym kolorem.

29

abstract void fillPolygon(int[] xPoints, int[] yPoints, int nPoints)

Wypełnia zamknięty wielokąt zdefiniowany przez tablice współrzędnych x i y.

30

void fillPolygon(Polygon p)

Wypełnia wielokąt zdefiniowany przez określony obiekt Wielokąt bieżącym kolorem kontekstu grafiki.

31

abstract void fillRect(int x, int y, int width, int height)

Wypełnia określony prostokąt.

32

abstract void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)

Wypełnia określony prostokąt z zaokrąglonymi narożnikami bieżącym kolorem.

33

void finalize()

Usuwa ten kontekst graficzny, gdy nie jest już przywoływany.

34

abstract Shape getClip()

Pobiera bieżący obszar przycinania.

35

abstract Rectangle getClipBounds()

Zwraca prostokąt ograniczający bieżącego obszaru przycinania.

36

Rectangle getClipBounds(Rectangle r)

Zwraca prostokąt ograniczający bieżącego obszaru przycinania.

37

Rectangle getClipRect()

Przestarzałe. Od wersji 1.1 JDK zastąpione przez getClipBounds ().

38

abstract Color getColor()

Pobiera bieżący kolor tego kontekstu grafiki.

39

abstract Font getFont()

Pobiera bieżącą czcionkę.

40

FontMetrics getFontMetrics()

Pobiera metryki czcionki bieżącej czcionki.

41

abstract FontMetrics getFontMetrics(Font f)

Pobiera metryki czcionki dla określonej czcionki.

42

boolean hitClip(int x, int y, int width, int height)

Zwraca wartość true, jeśli określony prostokątny obszar może przecinać bieżący obszar przycinania.

43

abstract void setClip(int x, int y, int width, int height)

Ustawia bieżący klip na prostokąt określony przez podane współrzędne.

44

abstract void setClip(Shape clip)

Ustawia bieżący obszar przycinania na dowolny kształt klipu.

45

abstract void setColor(Color c)

Ustawia bieżący kolor tego kontekstu graficznego na określony kolor.

46

abstract void setFont(Font font)

Ustawia czcionkę tego kontekstu graficznego na określoną czcionkę.

47

abstract void setPaintMode()

Ustawia tryb malowania tego kontekstu graficznego, aby nadpisać miejsce docelowe bieżącym kolorem tego kontekstu graficznego.

48

abstract void setXORMode(Color c1)

Ustawia tryb malowania tego kontekstu grafiki na naprzemiennie między bieżącym kolorem tego kontekstu graficznego a nowym określonym kolorem.

49

String toString()

Zwraca obiekt String reprezentujący wartość tego obiektu Graphics.

50

abstract void translate(int x, int y)

Tłumaczy początek kontekstu grafiki do punktu (x, y) w bieżącym układzie współrzędnych.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład grafiki

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      g.setColor(Color.GRAY);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 150);      
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

AWT Graphics2D Class

Wprowadzenie

Klasa Graphics2D rozszerza klasę Graphics, aby zapewnić bardziej wyrafinowaną kontrolę nad geometrią, przekształceniami współrzędnych, zarządzaniem kolorami i układem tekstu.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Graphics2D klasa:

public abstract class Graphics2D
   extends Graphics

Konstruktory klas

SN Konstruktor i opis
1

Graphics2D()

Konstruuje nowy obiekt Graphics2D.

Metody klasowe

SN Metoda i opis
1

abstract void addRenderingHints(Map<?,?> hints)

Ustawia wartości dowolnej liczby preferencji dla algorytmów renderowania.

2

abstract void clip(Shape s)

Przecina bieżący klip z wnętrzem określonego kształtu i ustawia klip na wynikowym przecięciu.

3

abstract void draw(Shape s)

Obrysowuje kontur Shape przy użyciu ustawień bieżącego kontekstu Graphics2D.

4

void draw3DRect(int x, int y, int width, int height, boolean raised)

Rysuje wyróżniony kontur 3-w określonego prostokąta.

5

abstract void drawGlyphVector(GlyphVector g, float x, float y)

Renderuje tekst określonego GlyphVector przy użyciu atrybutów renderowania kontekstu Graphics2D.

6

abstract void drawImage(BufferedImage img, BufferedImageOp op, int x, int y)

Renderuje BufferedImage, który jest filtrowany za pomocą BufferedImageOp.

7

abstract boolean drawImage(Image img, AffineTransform xform, ImageObserver obs)

Renderuje obraz, stosując transformację z przestrzeni obrazu do przestrzeni użytkownika przed rysowaniem.

8

abstract void drawRenderableImage(RenderableImage img, AffineTransform xform)

Renderuje RenderableImage, stosując transformację z przestrzeni obrazu do przestrzeni użytkownika przed rysowaniem.

9

abstract void drawRenderedImage(RenderedImage img, AffineTransform xform)

Renderuje RenderedImage, stosując transformację z przestrzeni obrazu do przestrzeni użytkownika przed rysowaniem.

10

abstract void drawString(AttributedCharacterIterator iterator, float x, float y)

Renderuje tekst podanego iteratora stosując jego atrybuty zgodnie ze specyfikacją klasy TextAttribute.

11

abstract void drawString(AttributedCharacterIterator iterator, int x, int y)

Renderuje tekst podanego iteratora stosując jego atrybuty zgodnie ze specyfikacją klasy TextAttribute.

12

abstract void drawString(String str, float x, float y)

Renderuje tekst określony przez określony String przy użyciu bieżącego stanu atrybutu tekstu w kontekście Graphics2D

13

abstract void drawString(String str, int x, int y)

Renderuje tekst określonego String przy użyciu bieżącego stanu atrybutu tekstowego w kontekście Graphics2D.

14

abstract void fill(Shape s)

Wypełnia wnętrze Shape przy użyciu ustawień kontekstu Graphics2D.

15

void fill3DRect(int x, int y, int width, int height, boolean raised)

Maluje podświetlony trójwymiarowy prostokąt wypełniony bieżącym kolorem.

16

abstract Color getBackground()

Zwraca kolor tła używany do czyszczenia regionu.

17

abstract Composite getComposite()

Zwraca bieżącą wartość Composite w kontekście Graphics2D.

18

abstract GraphicsConfiguration getDeviceConfiguration()

Zwraca konfigurację urządzenia skojarzoną z tym Graphics2D.

19

abstract FontRenderContext getFontRenderContext()

Uzyskaj kontekst renderowania czcionki w tym kontekście Graphics2D.

20

abstract Paint getPaint()

Zwraca bieżący obraz kontekstu Graphics2D.

21

abstract Object getRenderingHint(RenderingHints.Key hintKey)

Zwraca wartość pojedynczej preferencji dla algorytmów renderowania.

22

abstract RenderingHints getRenderingHints()

Pobiera preferencje dotyczące algorytmów renderowania.

23

abstract Stroke getStroke()

Zwraca bieżący Stroke w kontekście Graphics2D.

24

abstract AffineTransform getTransform()

Zwraca kopię bieżącej Transformacji w kontekście Graphics2D.

25

abstract boolean hit(Rectangle rect, Shape s, boolean onStroke)

Sprawdza, czy określony Shape przecina określony Rectangle, który znajduje się w obszarze urządzenia.

26

abstract void rotate(double theta)

Łączy bieżącą transformację Graphics2D z transformacją rotacji.

27

abstract void rotate(double theta, double x, double y)

Łączy bieżącą transformację Graphics2D z przekształconą transformacją obrotu.

28

abstract void scale(double sx, double sy)

Łączy bieżącą transformację Graphics2D z transformacją skalującą. Kolejne renderowanie jest zmieniane zgodnie z określonymi współczynnikami skalowania w stosunku do poprzedniego skalowania.

29

abstract void setBackground(Color color)

Ustawia kolor tła dla kontekstu Graphics2D.

30

abstract void setComposite(Composite comp)

Ustawia Composite dla kontekstu Graphics2D.

31

abstract void setPaint(Paint paint)

Ustawia atrybut Paint dla kontekstu Graphics2D.

32

abstract void setRenderingHint(RenderingHints.Key hintKey, Object hintValue)

Ustawia wartość pojedynczej preferencji dla algorytmów renderowania.

33

abstract void setRenderingHints(Map<?,?> hints)

Zastępuje wartości wszystkich preferencji algorytmów renderowania określonymi wskazówkami.

34

abstract void setStroke(Stroke s)

Ustawia Stroke dla kontekstu Graphics2D.

35

abstract void setTransform(AffineTransform Tx)

Zastępuje Transform w kontekście Graphics2D.

36

abstract void shear(double shx, double shy)

Łączy bieżącą transformację Graphics2D z transformacją ścinającą.

37

abstract void transform(AffineTransform Tx)

Komponuje obiekt AffineTransform z Transform w tym Graphics2D zgodnie z zasadą rulelast-specified-first-application.

38

abstract void translate(double tx, double ty)

Łączy bieżącą transformację Graphics2D z transformacją translacji.

39

abstract void translate(int x, int y)

Tłumaczy początek kontekstu Graphics2D do punktu (x, y) w bieżącym układzie współrzędnych.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład Graphics2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D)g;
      g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
         RenderingHints.VALUE_ANTIALIAS_ON);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g2.drawString("Welcome to TutorialsPoint", 50, 70); 
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

Klasa AWT Arc2D

Wprowadzenie

Klasa Arc2D jest nadklasą dla wszystkich obiektów, które przechowują łuk 2D zdefiniowany przez prostokąt kadrowania, kąt początkowy, zasięg kątowy (długość łuku) i typ zamknięcia (OTWARTE, AKORD lub SROKA).

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Arc2D klasa:

public abstract class Arc2D
   extends RectangularShape

Pole

Poniżej znajdują się pola dla java.awt.geom.Arc2D klasa:

  • static int CHORD - Typ zamknięcia łuku zamkniętego poprzez narysowanie odcinka linii prostej od początku segmentu łuku do końca segmentu łuku.

  • static int OPEN - Typ zamknięcia dla otwartego łuku bez segmentów ścieżki łączących dwa końce segmentu łukowego.

  • static int PIE - Typ zamknięcia łuku zamkniętego poprzez narysowanie segmentów linii prostych od początku segmentu łuku do środka pełnej elipsy i od tego punktu do końca segmentu łuku.

Konstruktory klas

SN Konstruktor i opis
1

protected Arc2D(int type)

Jest to klasa abstrakcyjna, której nie można utworzyć bezpośrednio.

Metody klasowe

SN Metoda i opis
1

boolean contains(double x, double y)

Określa, czy określony punkt znajduje się wewnątrz obwiedni łuku.

2

boolean contains(double x, double y, double w, double h)

Określa, czy wnętrze łuku zawiera w całości określony prostokąt.

3

boolean contains(Rectangle2D r)

Określa, czy wnętrze łuku zawiera w całości określony prostokąt.

4

boolean containsAngle(double angle)

Określa, czy określony kąt należy do zakresu kątowego łuku.

5

boolean equals(Object obj)

Określa, czy określony obiekt jest równy temu Arc2D.

6

abstract double getAngleExtent()

Zwraca kątowy zakres łuku.

7

abstract double getAngleStart()

Zwraca kąt początkowy łuku.

8

int getArcType()

Zwraca typ zamknięcia łuku: OTWÓRZ, AKORD lub SROKA.

9

Rectangle2D getBounds2D()

Zwraca bardzo precyzyjny prostokąt kadrowania łuku.

10

Point2D getEndPoint()

Zwraca punkt końcowy łuku.

11

PathIterator getPathIterator(AffineTransform at)

Zwraca obiekt iteracji, który definiuje granicę łuku.

12

Point2D getStartPoint()

Zwraca punkt początkowy łuku.

13

int hashCode()

Zwraca kod skrótu dla tego Arc2D.

14

boolean intersects(double x, double y, double w, double h)

Określa, czy wnętrze łuku przecina wnętrze określonego prostokąta.

15

protected abstract Rectangle2D makeBounds(double x, double y, double w, double h)

Konstruuje Rectangle2D o odpowiedniej precyzji, aby przechowywać parametry obliczone jako prostokąt ramki tego łuku.

16

abstract void setAngleExtent(double angExt)

Ustawia kątowy zakres tego łuku na określoną podwójną wartość.

17

void setAngles(double x1, double y1, double x2, double y2)

Ustawia kąt początkowy i zakres kątowy tego łuku za pomocą dwóch zestawów współrzędnych.

18

void setAngles(Point2D p1, Point2D p2)

Ustawia kąt początkowy i zakres kątowy tego łuku za pomocą dwóch punktów.

19

abstract void setAngleStart(double angSt)

Ustawia początkowy kąt tego łuku na określoną podwójną wartość.

20

void setAngleStart(Point2D p)

Ustawia kąt początkowy tego łuku na kąt zdefiniowany przez określony punkt względem środka tego łuku.

21

void setArc(Arc2D a)

Ustawia ten łuk tak, aby był taki sam, jak określony łuk.

22

abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)

Ustawia położenie, rozmiar, zakres kątowy i typ zamknięcia tego łuku na określone podwójne wartości.

23

void setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure)

Ustawia położenie, rozmiar, zakres kątowy i typ zamknięcia tego łuku na określone wartości.

24

void setArc(Rectangle2D rect, double angSt, double angExt, int closure)

Ustawia położenie, rozmiar, zakres kątowy i typ zamknięcia tego łuku na określone wartości.

25

void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure)

Ustawia położenie, granice, zakresy kątowe i typ zamknięcia tego łuku na określone wartości.

26

void setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius)

Ustawia położenie, granice i zakresy kątowe tego łuku na określoną wartość.

27

void setArcType(int type)

Ustawia typ zamknięcia tego łuku na określoną wartość: OPEN, CHORD lub PIE.

28

void setFrame(double x, double y, double w, double h)

Ustawia położenie i rozmiar prostokąta obramowania tego Shape na określone wartości prostokątne.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.geom.RectangularShape

  • java.lang.Object

Przykład Arc2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Arc2D.Float arc = new Arc2D.Float(Arc2D.PIE);
      arc.setFrame(70, 200, 150, 150);
      arc.setAngleStart(0);
      arc.setAngleExtent(145);
      Graphics2D g2 = (Graphics2D) g; 
      g2.setColor(Color.gray);
      g2.draw(arc);
      g2.setColor(Color.red);
      g2.fill(arc);
      g2.setColor(Color.black);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("Arc2D.PIE", 100, 120); 
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtGraphicsDemo

Sprawdź następujące dane wyjściowe

AWT CubicCurve2D Class

Wprowadzenie

Klasa CubicCurve2D określa sześcienny segment krzywej parametrycznej w przestrzeni współrzędnych (x, y).

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.geom.CubicCurve2D klasa:

public abstract class CubicCurve2D
   extends Object
      implements Shape, Cloneable

Konstruktory klas

SN Konstruktor i opis
1

protected CubicCurve2D()

Jest to klasa abstrakcyjna, której nie można utworzyć bezpośrednio.

Metody klasowe

SN Metoda i opis
1

Object clone()

Tworzy nowy obiekt tej samej klasy, co ten obiekt.

2

boolean contains(double x, double y)

Testuje, czy określone współrzędne znajdują się wewnątrz granicy Shape.

3

boolean contains(double x, double y, double w, double h)

Sprawdza, czy wnętrze Shape zawiera w całości określony prostokątny obszar.

4

boolean contains(Point2D p)

Testuje, czy określony Point2D znajduje się wewnątrz granicy Shape.

5

boolean contains(Rectangle2D r)

Testuje, czy wnętrze Shape w całości zawiera określony Rectangle2D.

6

Rectangle getBounds()

Zwraca liczbę całkowitą Rectangle, która całkowicie otacza Shape.

7

abstract Point2D getCtrlP1()

Zwraca pierwszy punkt kontrolny.

8

abstract Point2D getCtrlP2()

Zwraca drugi punkt kontrolny.

9

abstract double getCtrlX1()

Zwraca współrzędną X pierwszego punktu kontrolnego z podwójną precyzją.

10

abstract double getCtrlX2()

Zwraca współrzędną X drugiego punktu kontrolnego z podwójną precyzją.

11

abstract double getCtrlY1()

Zwraca współrzędną Y pierwszego punktu kontrolnego z podwójną precyzją.

12

abstract double getCtrlY2()

Zwraca współrzędną Y drugiego punktu kontrolnego z podwójną precyzją.

13

double getFlatness()

Zwraca płaskość tej krzywej.

14

static double getFlatness(double[] coords, int offset)

Zwraca płaskość krzywej sześciennej określonej przez punkty kontrolne przechowywane we wskazanej tablicy pod wskazanym indeksem.

15

static double getFlatness(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)

Zwraca płaskość krzywej sześciennej określonej przez wskazane punkty kontrolne.

16

double getFlatnessSq()

Zwraca kwadrat płaskości tej krzywej.

17

static double getFlatnessSq(double[] coords, int offset)

Zwraca kwadrat płaskości krzywej sześciennej określonej przez punkty kontrolne przechowywane we wskazanej tablicy pod wskazanym indeksem.

18

static double getFlatnessSq(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)

Zwraca kwadrat płaskości krzywej sześciennej określonej przez wskazane punkty kontrolne.

19

abstract Point2D getP1()

Zwraca punkt początkowy.

20

abstract Point2D getP2()

Zwraca punkt końcowy.

21

PathIterator getPathIterator(AffineTransform at)

Zwraca obiekt iteracji, który definiuje granicę kształtu.

22

PathIterator getPathIterator(AffineTransform at, double flatness)

Zwróć obiekt iteracji, który definiuje granicę spłaszczonego kształtu.

23

abstract double getX1()

Zwraca współrzędną X punktu początkowego z podwójną precyzją.

24

abstract double getX2()

Zwraca współrzędną X punktu końcowego z podwójną precyzją.

25

abstract double getY1()

Zwraca współrzędną Y punktu początkowego z podwójną precyzją.

26

abstract double getY2()

Zwraca współrzędną Y punktu końcowego z podwójną precyzją.

27

boolean intersects(double x, double y, double w, double h)

Sprawdza, czy wnętrze kształtu przecina wnętrze określonego prostokątnego obszaru.

28

boolean intersects(Rectangle2D r)

Testuje, czy wnętrze Shape przecina wnętrze określonego Rectangle2D.

29

void setCurve(CubicCurve2D c)

Ustawia położenie punktów końcowych i punktów kontrolnych tej krzywej na takie same, jak te w określonym CubicCurve2D.

30

void setCurve(double[] coords, int offset)

Ustawia położenie punktów końcowych i punktów kontrolnych tej krzywej na podwójne współrzędne przy określonym odsunięciu w określonym szyku.

31

abstract void setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)

Ustawia położenie punktów końcowych i punktów kontrolnych tej krzywej na określone podwójne współrzędne.

32

void setCurve(Point2D[] pts, int offset)

Ustawia położenie punktów końcowych i punktów kontrolnych tej krzywej na współrzędne obiektów Point2D przy określonym odsunięciu w określonym szyku.

33

void setCurve(Point2D p1, Point2D cp1, Point2D cp2, Point2D p2)

Ustawia położenie punktów końcowych i punktów kontrolnych tej krzywej na określone współrzędne Point2D.

34

static int solveCubic(double[] eqn)

Rozwiązuje sześcienny, którego współczynniki znajdują się w tablicy eqn i umieszcza niezłożone pierwiastki z powrotem w tej samej tablicy, zwracając liczbę pierwiastków.

35

static int solveCubic(double[] eqn, double[] res)

Rozwiąż sześcienny, którego współczynniki znajdują się w tablicy eqn i umieść niezłożone pierwiastki w tablicy res, zwracając liczbę pierwiastków.

36

void subdivide(CubicCurve2D left, CubicCurve2D right)

Dzieli tę krzywą sześcienną i zapisuje otrzymane dwie podzielone krzywe do parametrów lewej i prawej krzywej.

37

static void subdivide(CubicCurve2D src, CubicCurve2D left, CubicCurve2D right)

Dzieli krzywą sześcienną określoną przez parametr src i zapisuje otrzymane dwie podzielone krzywe w parametrach lewej i prawej krzywej.

38

static void subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff)

Dzieli krzywą sześcienną określoną przez współrzędne przechowywane w tablicy src pod indeksami od srcoff do (srcoff + 7) i zapisuje otrzymane dwie podzielone krzywe do dwóch tablic wyników w odpowiednich indeksach.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład CubicCurve2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      CubicCurve2D shape = new CubicCurve2D.Float();
      shape.setCurve(250F,250F,20F,90F,140F,100F,350F,330F);       
      Graphics2D g2 = (Graphics2D) g; 
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("CubicCurve2D.Curve", 100, 120);
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

AWT Ellipse2D Class

Wprowadzenie

Klasa Ellipse2D określa elipsę zdefiniowaną przez prostokąt ramki.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.geom.Ellipse2D klasa:

public abstract class Ellipse2D
   extends RectangularShape

Konstruktory klas

SN Konstruktor i opis
1

protected Ellipse2D()

Jest to klasa abstrakcyjna, której nie można utworzyć bezpośrednio.

Metody klasowe

SN Metoda i opis
1

boolean contains(double x, double y)

Testuje, czy określone współrzędne znajdują się wewnątrz granicy Shape.

2

boolean contains(double x, double y, double w, double h)

Sprawdza, czy wnętrze Shape zawiera w całości określony prostokątny obszar.

3

boolean equals(Object obj)

Określa, czy określony Object jest równy temu Ellipse2D.

4

PathIterator getPathIterator(AffineTransform at)

Zwraca obiekt iteracji, który definiuje granice tego Ellipse2D.

5

int hashCode()

Zwraca kod skrótu dla tego Ellipse2D.

6

boolean intersects(double x, double y, double w, double h)

Sprawdza, czy wnętrze kształtu przecina wnętrze określonego prostokątnego obszaru.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład Ellipse2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Ellipse2D shape = new Ellipse2D.Float();
      shape.setFrame(100, 150, 200,100);
      Graphics2D g2 = (Graphics2D) g; 
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("Ellipse2D.Oval", 100, 120); 
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

AWT Rectangle2D Class

Wprowadzenie

Klasa Rectangle2D określa prostokąt zdefiniowany przez położenie (x, y) i wymiar (wxh).

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.geom.Rectangle2D klasa:

public abstract class Rectangle2D
   extends RectangularShape

Pole

Poniżej znajdują się pola dla java.awt.geom.Arc2D klasa:

  • static int OUT_BOTTOM - Maska bitowa wskazująca, że ​​punkt znajduje się poniżej tego Rectangle2D.

  • static int OUT_LEFT - Maska bitowa wskazująca, że ​​punkt znajduje się po lewej stronie tego Rectangle2D.

  • static int OUT_RIGHT - Maska bitowa wskazująca, że ​​punkt znajduje się na prawo od tego Rectangle2D.

  • static int OUT_TOP - Maska bitowa wskazująca, że ​​punkt znajduje się powyżej tego Rectangle2D.

Konstruktory klas

SN Konstruktor i opis
1

protected Rectangle2D()

Jest to klasa abstrakcyjna, której nie można utworzyć bezpośrednio.

Metody klasowe

SN Metoda i opis
1

void add(double newx, double newy)

Dodaje punkt określony przez argumenty podwójnej precyzji newx i newy do tego Rectangle2D.

2

void add(Point2D pt)

Dodaje punkt obiektu Point2D do tego Rectangle2D.

3

void add(Rectangle2D r)

Dodaje obiekt Rectangle2D do tego Rectangle2D.

4

boolean contains(double x, double y)

Testuje, czy określone współrzędne znajdują się wewnątrz granicy Shape.

5

boolean contains(double x, double y, double w, double h)

Sprawdza, czy wnętrze Shape zawiera w całości określony prostokątny obszar.

6

abstract Rectangle2D createIntersection(Rectangle2D r)

Zwraca nowy obiekt Rectangle2D reprezentujący część wspólną tego Rectangle2D z określonym Rectangle2D.

7

abstract Rectangle2D createUnion(Rectangle2D r)

Zwraca nowy obiekt Rectangle2D reprezentujący unię tego Rectangle2D z określonym Rectangle2D.

8

boolean equals(Object obj)

Określa, czy określony Object jest równy temu Rectangle2D.

9

Rectangle2D getBounds2D()

Zwraca wysoką precyzję i dokładniejsze pole ograniczające Shape niż metoda getBounds.

10

PathIterator getPathIterator(AffineTransform at)

Zwraca obiekt iteracji, który definiuje granicę tego Rectangle2D.

11

PathIterator getPathIterator(AffineTransform at, double flatness)

Zwraca obiekt iteracji, który definiuje granicę spłaszczonego Rectangle2D.

12

int hashCode()

Zwraca kod skrótu dla tego Rectangle2D.

13

static void intersect(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)

Przecina parę określonych źródłowych obiektów Rectangle2D i umieszcza wynik w określonym docelowym obiekcie Rectangle2D.

14

boolean intersects(double x, double y, double w, double h)

Sprawdza, czy wnętrze kształtu przecina wnętrze określonego prostokątnego obszaru.

15

boolean intersectsLine(double x1, double y1, double x2, double y2)

Testuje, czy określony segment linii przecina wnętrze tego Rectangle2D.

16

boolean intersectsLine(Line2D l)

Testuje, czy określony segment linii przecina wnętrze tego Rectangle2D.

17

abstract int outcode(double x, double y)

Określa, gdzie określone współrzędne znajdują się w odniesieniu do tego Rectangle2D.

18

int outcode(Point2D p)

Określa, gdzie znajduje się określony Point2D w odniesieniu do tego Rectangle2D.

19

void setFrame(double x, double y, double w, double h)

Ustawia lokalizację i rozmiar zewnętrznych granic tego Rectangle2D na określone wartości prostokątne.

20

abstract void setRect(double x, double y, double w, double h)

Ustawia lokalizację i rozmiar tego Rectangle2D na określone podwójne wartości.

21

void setRect(Rectangle2D r)

Ustawia ten Rectangle2D tak, aby był taki sam jak określony Rectangle2D.

22

static void union(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)

Łączy parę źródłowych obiektów Rectangle2D i umieszcza wynik w określonym docelowym obiekcie Rectangle2D.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.awt.geom.RectangularShape

  • java.lang.Object

Przykład Ellipse2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Rectangle2D shape = new Rectangle2D.Float();
      shape.setFrame(100, 150, 200,100);
      Graphics2D g2 = (Graphics2D) g; 
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("Rectangle2D.Rectangle", 100, 120);
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

AWT QuadCurve2D Class

Wprowadzenie

Klasa QuadCurve2D określa kwadratowy segment krzywej parametrycznej w przestrzeni współrzędnych (x, y).

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.geom.QuadCurve2D klasa:

public abstract class QuadCurve2D
   extends Object
      implements Shape, Cloneable

Konstruktory klas

SN Konstruktor i opis
1

protected QuadCurve2D() ()

Jest to klasa abstrakcyjna, której nie można utworzyć bezpośrednio.

Metody klasowe

SN Metoda i opis
1

Object clone()

Tworzy nowy obiekt tej samej klasy i z taką samą zawartością jak ten obiekt.

2

boolean contains(double x, double y)

Testuje, czy określone współrzędne znajdują się wewnątrz granicy Shape.

3

boolean contains(double x, double y, double w, double h)

Sprawdza, czy wnętrze Shape zawiera w całości określony prostokątny obszar.

4

boolean contains(Point2D p)

Testuje, czy określony Point2D znajduje się wewnątrz granicy Shape.

5

boolean contains(Rectangle2D r)

Testuje, czy wnętrze Shape w całości zawiera określony Rectangle2D.

6

Rectangle getBounds()

Zwraca liczbę całkowitą Rectangle, która całkowicie otacza Shape.

7

abstract Point2D getCtrlPt()

Zwraca punkt kontrolny.

8

abstract double getCtrlX()

Zwraca współrzędną X punktu kontrolnego z podwójną precyzją.

9

abstract double getCtrlY()

Zwraca współrzędną Y punktu kontrolnego z podwójną precyzją.

10

doublegetFlatness()

Zwraca płaskość lub maksymalną odległość punktu kontrolnego od linii łączącej punkty końcowe tego QuadCurve2D.

11

static double getFlatness(double[] coords, int offset)

Zwraca płaskość lub maksymalną odległość punktu kontrolnego od linii łączącej punkty końcowe krzywej kwadratowej określonej przez punkty kontrolne przechowywane we wskazanej tablicy pod wskazanym indeksem.

12

static double getFlatness(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)

Zwraca płaskość lub maksymalną odległość punktu kontrolnego od linii łączącej punkty końcowe krzywej kwadratowej określonej przez wskazane punkty kontrolne.

13

double getFlatnessSq()

Zwraca kwadrat płaskości lub maksymalną odległość punktu kontrolnego od linii łączącej punkty końcowe tego QuadCurve2D.

14

static double getFlatnessSq(double[] coords, int offset)

Zwraca kwadrat płaskości lub maksymalną odległość punktu kontrolnego od linii łączącej punkty końcowe krzywej kwadratowej określonej przez punkty kontrolne przechowywane we wskazanej tablicy pod wskazanym indeksem.

15

static double getFlatnessSq(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)

Zwraca kwadrat płaskości lub maksymalną odległość punktu kontrolnego od linii łączącej punkty końcowe krzywej kwadratowej określonej przez wskazane punkty kontrolne.

16

abstract Point2D getP1()

Zwraca punkt początkowy.

17

abstract Point2D getP2()

Zwraca punkt końcowy.

18

PathIterator getPathIterator(AffineTransform at)

Zwraca obiekt iteracji, który definiuje granicę kształtu tego QuadCurve2D.

19

PathIterator getPathIterator(AffineTransform at, double flatness)

Zwraca obiekt iteracji, który definiuje granicę spłaszczonego kształtu tego QuadCurve2D.

20

abstract double getX1()

Zwraca współrzędną X punktu początkowego z podwójną dokładnością.

21

abstract double getX2()

Zwraca współrzędną X punktu końcowego z podwójną precyzją.

22

abstract double getY1()

Zwraca współrzędną Y punktu początkowego z podwójną precyzją.

23

abstract double getY2()

Zwraca współrzędną Y punktu końcowego z podwójną precyzją.

24

boolean intersects(double x, double y, double w, double h)

Sprawdza, czy wnętrze kształtu przecina wnętrze określonego prostokątnego obszaru.

25

boolean intersects(Rectangle2D r)

Testuje, czy wnętrze Shape przecina wnętrze określonego Rectangle2D.

26

void setCurve(double[] coords, int offset)

Ustawia położenie punktów końcowych i punktów kontrolnych tego QuadCurve2D na podwójne współrzędne w określonym przesunięciu w określonej tablicy.

27

abstract void setCurve(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)

Ustawia położenie punktów końcowych i punktu kontrolnego tej krzywej na określone podwójne współrzędne.

28

void setCurve(Point2D[] pts, int offset)

Ustawia położenie punktów końcowych i punktów kontrolnych tego QuadCurve2D na współrzędne obiektów Point2D przy określonym przesunięciu w określonej tablicy.

29

void setCurve(Point2D p1, Point2D cp, Point2D p2)

Ustawia lokalizację punktów końcowych i punktu kontrolnego tego QuadCurve2D na określone współrzędne Point2D.

30

void setCurve(QuadCurve2D c)

Ustawia położenie punktów końcowych i punktu kontrolnego tego QuadCurve2D na takie same, jak te w określonym QuadCurve2D.

31

static int solveQuadratic(double[] eqn)

Rozwiązuje funkcję kwadratową, której współczynniki znajdują się w tablicy eqn, i umieszcza niezłożone pierwiastki z powrotem w tej samej tablicy, zwracając liczbę pierwiastków.

32

static int solveQuadratic(double[] eqn, double[] res)

Rozwiązuje funkcję kwadratową, której współczynniki znajdują się w tablicy eqn, i umieszcza niezłożone pierwiastki w tablicy res, zwracając liczbę pierwiastków.

33

static void subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff)

Dzieli krzywą kwadratową określoną przez współrzędne przechowywane w tablicy src pod indeksami od srcoff do srcoff + 5 i zapisuje otrzymane dwie podzielone krzywe do dwóch tablic wyników w odpowiednich indeksach.

34

void subdivide(QuadCurve2D left, QuadCurve2D right)

Dzieli ten QuadCurve2D i zapisuje powstałe dwie podzielone krzywe na parametry lewego i prawego łuku.

35

static void subdivide(QuadCurve2D src, QuadCurve2D left, QuadCurve2D right)

Dzieli krzywą kwadratową określoną przez parametr src i zapisuje otrzymane dwie podzielone krzywe do parametrów lewej i prawej krzywej.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład QuadCurve2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      QuadCurve2D shape = new QuadCurve2D.Double();
      shape.setCurve(250D,250D,100D,100D,200D,150D);  
      Graphics2D g2 = (Graphics2D) g; 
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("QuadCurve2D.Curve", 100, 120);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

Klasa AWT Line2D

Wprowadzenie

Klasa Line2D określa odcinek linii w przestrzeni współrzędnych (x, y).

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.geom.Line2D klasa:

public abstract class Line2D
   extends Object
      implements Shape, Cloneable

Konstruktory klas

SN Konstruktor i opis
1

protected Line2D() ()

Jest to klasa abstrakcyjna, której nie można utworzyć bezpośrednio.

Metody klasowe

SN Metoda i opis
1

Object clone()

Tworzy nowy obiekt tej samej klasy, co ten obiekt.

2

boolean contains(double x, double y)

Sprawdza, czy określona współrzędna znajduje się w granicach tego Line2D.

3

boolean contains(double x, double y, double w, double h)

Sprawdza, czy wnętrze tego Line2D w całości zawiera określony zestaw współrzędnych prostokątnych.

4

boolean contains(Point2D p)

Sprawdza, czy dany Point2D znajduje się w granicach tego Line2D.

5

boolean contains(Rectangle2D r)

Testuje, czy wnętrze tego Line2D w całości zawiera określony Rectangle2D.

6

Rectangle getBounds()

Zwraca liczbę całkowitą Rectangle, która całkowicie otacza Shape.

7

abstract Point2D getP1()

Zwraca początkowy Point2D tego Line2D.

8

abstract Point2D getP2()

Zwraca punkt końcowy Point2D tego Line2D.

9

PathIterator getPathIterator(AffineTransform at)

Zwraca obiekt iteracji, który definiuje granice tego Line2D.

10

PathIterator getPathIterator(AffineTransform at, double flatness)

Zwraca obiekt iteracji, który definiuje granicę tego spłaszczonego Line2D.

11

abstract double getX1()

Zwraca współrzędną X punktu początkowego z podwójną precyzją.

12

abstract double getX2()

Zwraca współrzędną X punktu końcowego z podwójną precyzją.

13

abstract double getY1()

Zwraca współrzędną Y punktu początkowego z podwójną precyzją.

14

abstract double getY2()

Zwraca współrzędną Y punktu końcowego z podwójną precyzją.

15

boolean intersects(double x, double y, double w, double h)

Sprawdza, czy wnętrze kształtu przecina wnętrze określonego prostokątnego obszaru.

16

boolean intersects(Rectangle2D r)

Testuje, czy wnętrze Shape przecina wnętrze określonego Rectangle2D.

17

boolean intersectsLine(double x1, double y1, double x2, double y2)

Sprawdza, czy odcinek linii od (x1, y1) do (x2, y2) przecina ten odcinek linii.

18

boolean intersectsLine(Line2D l)

Sprawdza, czy określony segment linii przecina ten segment linii.

19

static boolean linesIntersect(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4)

Sprawdza, czy odcinek linii od (x1, y1) do (x2, y2) przecina odcinek linii od (x3, y3) do (x4, y4).

20

double ptLineDist(double px, double py)

Zwraca odległość od punktu do tej linii.

21

static double ptLineDist(double x1, double y1, double x2, double y2, double px, double py)

Zwraca odległość od punktu do linii.

22

double ptLineDist(Point2D pt)

Zwraca odległość od Point2D do tej linii.

23

double ptLineDistSq(double px, double py)

Zwraca kwadrat odległości od punktu do tej linii.

24

static double ptLineDistSq(double x1, double y1, double x2, double y2, double px, double py)

Zwraca kwadrat odległości od punktu do linii.

25

double ptLineDistSq(Point2D pt)

Zwraca kwadrat odległości od określonego Point2D do tej linii.

26

double ptSegDist(double px, double py)

Zwraca odległość od punktu do tego segmentu linii.

27

static double ptSegDist(double x1, double y1, double x2, double y2, double px, double py)

Zwraca odległość od punktu do segmentu linii.

28

double ptSegDist(Point2D pt)

Zwraca odległość od Point2D do tego segmentu linii.

29

double ptSegDistSq(double px, double py)

Zwraca kwadrat odległości od punktu do tego odcinka linii.

30

static double ptSegDistSq(double x1, double y1, double x2, double y2, double px, double py)

Zwraca kwadrat odległości od punktu do segmentu linii.

31

double ptSegDistSq(Point2D pt)

Zwraca kwadrat odległości od Point2D do tego segmentu linii.

32

int relativeCCW(double px, double py)

Zwraca wskaźnik położenia określonego punktu (px, py) w odniesieniu do tego segmentu linii.

33

static int relativeCCW(double x1, double y1, double x2, double y2, double px, double py)

Zwraca wskaźnik położenia określonego punktu (px, py) w odniesieniu do segmentu linii od (x1, y1) do (x2, y2).

34

int relativeCCW(Point2D p)

Zwraca wskaźnik położenia określonego Point2D w odniesieniu do tego segmentu linii.

35

abstract void setLine(double x1, double y1, double x2, double y2)

Ustawia położenie punktów końcowych tego Line2D na określone podwójne współrzędne.

36

void setLine(Line2D l)

Ustawia położenie punktów końcowych tego Line2D na takie same, jak te punkty końcowe określonego Line2D.

37

void setLine(Point2D p1, Point2D p2)

Ustawia położenie punktów końcowych tego Line2D na określone współrzędne Point2D.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład Line2D

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Line2D shape = new Line2D.Double();
      shape.setLine(250D,250D,150D,150D);  
      Graphics2D g2 = (Graphics2D) g; 
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("Line2D.Line", 100, 120);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

Klasa czcionek AWT

Wprowadzenie

Klasa Font określa czcionki, które służą do renderowania tekstu w widoczny sposób.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Font klasa:

public class Font
   extends Object
      implements Serializable

Pole

Poniżej znajdują się pola dla java.awt.geom.Arc2D klasa:

  • static int BOLD - Odważny styl stały.

  • static int CENTER_BASELINE - linia bazowa używana w skryptach ideograficznych, takich jak chiński, japoński i koreański podczas układania tekstu.

  • static String DIALOG - Stała łańcuchowa dla kanonicznej nazwy rodziny czcionki logicznej „Dialog”.

  • static String DIALOG_INPUT - Stała łańcuchowa dla kanonicznej nazwy rodziny logicznej czcionki „DialogInput”.

  • static int HANGING_BASELINE - Linia bazowa używana w Devanigiri i podobnych skryptach podczas układania tekstu.

  • static int ITALIC - Stała stylu napisana kursywą.

  • static int LAYOUT_LEFT_TO_RIGHT - Flaga layoutGlyphVector wskazująca, że ​​tekst jest pisany od lewej do prawej, zgodnie z analizą BiDi.

  • static int LAYOUT_NO_LIMIT_CONTEXT - Flaga layoutGlyphVector wskazująca, że ​​tekst w tablicy char po wskazanym limicie nie powinien być sprawdzany.

  • static int LAYOUT_NO_START_CONTEXT - Flaga layoutGlyphVector wskazująca, że ​​tekst w tablicy char przed wskazanym początkiem nie powinien być sprawdzany.

  • static int LAYOUT_RIGHT_TO_LEFT - Flaga layoutGlyphVector wskazująca, że ​​tekst jest pisany od prawej do lewej, zgodnie z analizą BiDi.

  • static String MONOSPACED - Stała typu String dla kanonicznej nazwy rodziny czcionki logicznej „Monospaced”.

  • protected String name - Logiczna nazwa tego Font, przekazana do konstruktora.

  • static int PLAIN - Stała zwykłego stylu.

  • protected float pointSize - Rozmiar tej czcionki w punktach w liczbie zmiennoprzecinkowej.

  • static int ROMAN_BASELINE - linia bazowa używana w większości alfabetów łacińskich podczas układania tekstu.

  • static String SANS_SERIF - Stała typu String dla kanonicznej nazwy rodziny logicznej czcionki „SansSerif”.

  • static String SERIF - Stała typu String dla kanonicznej nazwy rodziny czcionki logicznej „Serif”.

  • protected int size - wielkość czcionki w punktach, zaokrąglona do liczby całkowitej.

  • protected int style - Styl tej czcionki przekazany konstruktorowi.

  • static int TRUETYPE_FONT - Zidentyfikuj zasób czcionek typu TRUETYPE.

  • static int TYPE1_FONT - Zidentyfikuj zasób czcionek typu TYPE1.

Konstruktory klas

SN Konstruktor i opis
1

protected Font() ()

Tworzy nową czcionkę z określonej czcionki.

2

Font(Map<? extends AttributedCharacterIterator.Attribute,?> attributes)

Tworzy nową czcionkę z określonej czcionki.

3

Font(String name, int style, int size)

Tworzy nową czcionkę z określonej czcionki.

Metody klasowe

SN Metoda i opis
1

boolean canDisplay(char c)

Sprawdza, czy ta czcionka ma glif dla określonego znaku.

2

boolean canDisplay(int codePoint)

Sprawdza, czy ta czcionka ma glif dla określonego znaku.

3

int canDisplayUpTo(char[] text, int start, int limit)

Wskazuje, czy ta czcionka może wyświetlać znaki w określonym tekście, zaczynając od początku i kończąc na limicie.

4

int canDisplayUpTo(CharacterIterator iter, int start, int limit)

Wskazuje, czy ta czcionka może wyświetlać tekst określony przez iter, zaczynając od początku i kończąc na granicy.

5

int canDisplayUpTo(String str)

Wskazuje, czy ta Font może wyświetlać określony String.

6

static Font createFont(int fontFormat, File fontFile)

Zwraca nową czcionkę przy użyciu określonego typu czcionki i określonego pliku czcionki.

7

static Font createFont(int fontFormat, InputStream fontStream)

Zwraca nową czcionkę przy użyciu określonego typu czcionki i danych wejściowych.

8

GlyphVector createGlyphVector(FontRenderContext frc, char[] chars)

Tworzy GlyphVector, mapując znaki do glifów jeden do jednego na podstawie cmap Unicode w tym Font.

9

GlyphVector createGlyphVector(FontRenderContext frc, CharacterIterator ci)

Tworzy GlyphVector, mapując określone znaki na glify jeden do jednego na podstawie cmap Unicode w tym Font.

10

GlyphVector createGlyphVector(FontRenderContext frc, int[] glyphCodes)

Tworzy GlyphVector, mapując znaki do glifów jeden do jednego na podstawie cmap Unicode w tym Font.

11

GlyphVector createGlyphVector(FontRenderContext frc, String str)

Tworzy GlyphVector, mapując znaki do glifów jeden do jednego na podstawie cmap Unicode w tym Font.

12

static Font decode(String str)

Zwraca czcionkę opisaną przez argument str.

13

Font deriveFont(AffineTransform trans)

Tworzy nowy obiekt Font, replikując bieżący obiekt Font i stosując do niego nowe przekształcenie.

14

Font deriveFont(float size)

Tworzy nowy obiekt Font, replikując bieżący obiekt Font i stosując do niego nowy rozmiar.

15

Font deriveFont(int style)

Tworzy nowy obiekt Font, replikując bieżący obiekt Font i stosując do niego nowy styl.

16

Font deriveFont(int style, AffineTransform trans)

Tworzy nowy obiekt Font, replikując ten obiekt Font i stosując nowy styl i transformację.

17

Font deriveFont(int style, float size)

Tworzy nowy obiekt Font, replikując ten obiekt Font i stosując nowy styl i rozmiar.

18

Font deriveFont(Map<? extends AttributedCharacterIterator.Attribute,?> attributes)

Tworzy nowy obiekt Font, replikując bieżący obiekt Font i stosując do niego nowy zestaw atrybutów czcionki.

19

boolean equals(Object obj)

Porównuje ten obiekt Font z określonym obiektem.

20

protected void finalize()

Usuwa natywny obiekt Font.

21

Map<TextAttribute,?> getAttributes()

Zwraca mapę atrybutów czcionek dostępnych w tej czcionce.

22

AttributedCharacterIterator.Attribute[] getAvailableAttributes()

Zwraca klucze wszystkich atrybutów obsługiwanych przez tę czcionkę.

23

byte getBaselineFor(char c)

Zwraca linię bazową odpowiednią do wyświetlania tego znaku.

24

String getFamily()

Zwraca nazwę rodziny tej czcionki.

25

String getFamily(Locale l)

Zwraca nazwę rodziny tej czcionki zlokalizowaną dla określonych ustawień regionalnych.

26

static Font getFont(Map<? extends AttributedCharacterIterator.Attribute,?> attributes)

Zwraca czcionkę odpowiednią dla atrybutów.

27

static Font getFont(String nm)

Zwraca obiekt Font z listy właściwości systemu.

28

static Font getFont(String nm, Font font)

Pobiera określoną czcionkę z listy właściwości systemu.

29

String getFontName()

Zwraca nazwę kroju czcionki tej czcionki.

30

String getFontName(Locale l)

Zwraca nazwę kroju czcionki Font zlokalizowaną dla określonych ustawień regionalnych.

31

float getItalicAngle()

Zwraca kąt kursywy tej czcionki.

32

LineMetrics getLineMetrics(char[] chars, int beginIndex, int limit, FontRenderContext frc)

Zwraca obiekt LineMetrics utworzony z określonymi argumentami.

33

LineMetrics getLineMetrics(CharacterIterator ci, int beginIndex, int limit, FontRenderContext frc)

Zwraca obiekt LineMetrics utworzony z określonymi argumentami.

34

LineMetrics getLineMetrics(String str, FontRenderContext frc)

Zwraca obiekt LineMetrics utworzony przy użyciu określonego String i FontRenderContext.

35

LineMetrics getLineMetrics(String str, int beginIndex, int limit, FontRenderContext frc)

Zwraca obiekt LineMetrics utworzony z określonymi argumentami.

36

Rectangle2D getMaxCharBounds(FontRenderContext frc)

Zwraca granice znaku z maksymalnymi granicami zdefiniowanymi w określonym FontRenderContext.

37

int getMissingGlyphCode()

Zwraca glyphCode, który jest używany, gdy ta Font nie ma glifu dla określonego punktu kodowego Unicode.

38

String getName()

Zwraca logiczną nazwę tej czcionki.

39

int getNumGlyphs()

Zwraca liczbę glifów w tej czcionce.

40

java.awt.peer.FontPeer getPeer()

Przestarzałe. Renderowanie czcionek jest teraz niezależne od platformy.

41

String getPSName()

Zwraca nazwę postscriptową tej czcionki.

42

int getSize()

Zwraca rozmiar w punktach tej czcionki w zaokrągleniu do liczby całkowitej.

43

float getSize2D()

Zwraca rozmiar w punktach tej czcionki w wartości zmiennoprzecinkowej.

44

Rectangle2D getStringBounds(char[] chars, int beginIndex, int limit, FontRenderContext frc)

Zwraca logiczne granice określonej tablicy znaków w określonym FontRenderContext.

45

Rectangle2D getStringBounds(CharacterIterator ci, int beginIndex, int limit, FontRenderContext frc)

Zwraca logiczne granice znaków indeksowanych w określonym CharacterIterator w określonym FontRenderContext.

46

Rectangle2D getStringBounds(String str, FontRenderContext frc)

Zwraca logiczne granice określonego String w określonym FontRenderContext.

47

Rectangle2D getStringBounds(String str, int beginIndex, int limit, FontRenderContext frc)

Zwraca logiczne granice określonego String w określonym FontRenderContext.

48

int getStyle()

Zwraca styl tej czcionki.

49

AffineTransform getTransform()

Zwraca kopię transformacji skojarzonej z tą czcionką.

50

int hashCode()

Zwraca kod skrótu dla tej czcionki.

51

boolean hasLayoutAttributes()

Zwróć wartość true, jeśli ta czcionka zawiera atrybuty, które wymagają dodatkowego przetwarzania układu.

52

boolean hasUniformLineMetrics()

Sprawdza, czy ta czcionka ma jednolite metryki linii.

53

boolean isBold()

Wskazuje, czy styl tego obiektu Font jest pogrubiony.

54

boolean isItalic()

Wskazuje, czy styl tego obiektu Font to ITALIC.

55

boolean isPlain()

Wskazuje, czy stylem tego obiektu Font jest ZWYKŁY.

56

boolean isTransformed()

Wskazuje, czy ten obiekt Font ma transformację, która wpływa na jego rozmiar oprócz atrybutu Size.

57

GlyphVector layoutGlyphVector(FontRenderContext frc, char[] text, int start, int limit, int flags)

Zwraca nowy obiekt GlyphVector, wykonując pełny układ tekstu, jeśli to możliwe.

58

String toString()

Konwertuje ten obiekt Font na reprezentację typu String.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład czcionki

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D)g;        
      Font plainFont = new Font("Serif", Font.PLAIN, 24);        
      g2.setFont(plainFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 70); 
      Font italicFont = new Font("Serif", Font.ITALIC, 24);        
      g2.setFont(italicFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 120); 
      Font boldFont = new Font("Serif", Font.BOLD, 24);        
      g2.setFont(boldFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 170); 
      Font boldItalicFont = new Font("Serif", Font.BOLD+Font.ITALIC, 24);        
      g2.setFont(boldItalicFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 220); 
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

Klasa koloru AWT

Wprowadzenie

Klasa Color określa kolory w domyślnej przestrzeni kolorów sRGB lub kolory w dowolnych przestrzeniach kolorów identyfikowanych przez ColorSpace.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.Color klasa:

public class Color
   extends Object
      implements Paint, Serializable

Pole

Poniżej znajdują się pola dla java.awt.geom.Arc2D klasa:

  • static Color black - kolor czarny.

  • static Color BLACK - kolor czarny.

  • static Color blue -- Kolor niebieski.

  • static Color BLUE -- Kolor niebieski.

  • static Color cyan - Kolor cyjan.

  • static Color CYAN - Kolor cyjan.

  • static Color DARK_GRAY - Kolor ciemnoszary.

  • static Color darkGray - Kolor ciemnoszary.

  • static Color gray - kolor szary.

  • static Color GRAY - kolor szary.

  • static Color green - kolor zielony.

  • static Color GREEN - kolor zielony.

  • static Color LIGHT_GRAY - Kolor jasnoszary.

  • static Color lightGray - Kolor jasnoszary.

  • static Color magenta - Kolor magenta.

  • static Color MAGENTA - Kolor magenta.

  • static Color orange -- Kolor pomarańczowy.

  • static Color ORANGE -- Kolor pomarańczowy.

  • static Color pink - kolor różowy.

  • static Color PINK - kolor różowy.

  • static Color red -- Kolor czerwony.

  • static Color RED -- Kolor czerwony.

  • static Color white - kolor biały.

  • static Color WHITE - kolor biały.

  • static Color yellow - kolor żółty.

  • static Color YELLOW - kolor żółty.

Konstruktory klas

SN Konstruktor i opis
1

Color(ColorSpace cspace, float[] components, float alpha)

Tworzy kolor w określonym ColorSpace ze składnikami koloru określonymi w tablicy zmiennoprzecinkowej i określonej wartości alfa.

2

Color(float r, float g, float b)

Tworzy nieprzezroczysty kolor sRGB z określonymi wartościami koloru czerwonego, zielonego i niebieskiego w zakresie (0,0 - 1,0).

3

Color(float r, float g, float b, float a)

Tworzy kolor sRGB z określonymi wartościami czerwieni, zieleni, niebieskiego i alfa w zakresie (0,0 - 1,0).

4

Color(int rgb)

Tworzy nieprzezroczysty kolor sRGB z określoną połączoną wartością RGB składającą się z czerwonego składnika na bitach 16–23, zielonego na bitach 8–15 i niebieskiego na bitach 0–7.

5

Color(int rgba, boolean hasalpha)

Tworzy kolor sRGB z określoną połączoną wartością RGBA składającą się ze składnika alfa na bitach 24–31, składnika czerwonego na bitach 16–23, składnika zielonego na bitach 8–15 i składnika niebieskiego na bitach 0–7.

6

Color(int r, int g, int b)

Tworzy nieprzezroczysty kolor sRGB z określonymi wartościami koloru czerwonego, zielonego i niebieskiego w zakresie (0–255).

7

Color(int r, int g, int b, int a)

Tworzy kolor sRGB z określonymi wartościami koloru czerwonego, zielonego, niebieskiego i alfa w zakresie (0–255).

Metody klasowe

SN Metoda i opis
1

Color brighter()

Tworzy nowy kolor, który jest jaśniejszą wersją tego koloru.

2

PaintContext createContext(ColorModel cm, Rectangle r, Rectangle2D r2d, AffineTransform xform, RenderingHints hints)

Tworzy i zwraca PaintContext używany do generowania wzoru jednolitego koloru.

3

Color darker()

Tworzy nowy kolor, który jest ciemniejszą wersją tego koloru.

4

static Color decode(String nm)

Konwertuje String na liczbę całkowitą i zwraca określony nieprzezroczysty Color.

5

boolean equals(Object obj)

Określa, czy inny obiekt jest równy temu Color.

6

int getAlpha()

Zwraca składnik alfa z zakresu 0-255.

7

int getBlue()

Zwraca niebieską składową z zakresu 0-255 w domyślnej przestrzeni sRGB.

8

static Color getColor(String nm)

Znajduje kolor we właściwościach systemu.

9

static Color getColor(String nm, Color v)

Znajduje kolor we właściwościach systemu.

10

static Color getColor(String nm, int v)

Znajduje kolor we właściwościach systemu.

11

float[] getColorComponents(ColorSpace cspace, float[] compArray)

Zwraca tablicę zmiennoprzecinkową zawierającą tylko składniki koloru z ColorSpace określone przez parametr cspace.

12

float[] getColorComponents(float[] compArray)

Zwraca tablicę zmiennoprzecinkową zawierającą tylko składniki koloru Color, w przestrzeni ColorSpace koloru.

13

ColorSpace getColorSpace()

Zwraca ColorSpace tego koloru.

14

float[] getComponents(ColorSpace cspace, float[] compArray)

Zwraca tablicę zmiennoprzecinkową zawierającą składniki koloru i alfa obiektu Color w przestrzeni kolorów określonej przez parametr cspace.

15

float[] getComponents(float[] compArray)

Zwraca tablicę zmiennoprzecinkową zawierającą składniki koloru i alfa koloru w przestrzeni ColorSpace koloru.

16

int getGreen()

Zwraca zielony składnik z zakresu 0-255 w domyślnej przestrzeni sRGB.

17

static Color getHSBColor(float h, float s, float b)

Tworzy obiekt Color na podstawie określonych wartości modelu kolorów HSB.

18

int getRed()

Zwraca składnik czerwony z zakresu 0-255 w domyślnej przestrzeni sRGB.

19

int getRGB()

Zwraca wartość RGB reprezentującą kolor w domyślnym modelu kolorów sRGB.

20

float[] getRGBColorComponents(float[] compArray)

Zwraca tablicę zmiennoprzecinkową zawierającą tylko składniki koloru Color, w domyślnej przestrzeni kolorów sRGB.

21

float[] getRGBComponents(float[] compArray)

Zwraca tablicę zmiennoprzecinkową zawierającą składowe color i alpha Color, zgodnie z domyślną przestrzenią kolorów sRGB.

22

int getTransparency()

Zwraca tryb przezroczystości dla tego koloru.

23

int hashCode()

Oblicza kod skrótu dla tego Color.

24

static int HSBtoRGB(float hue, float saturation, float brightness)

Konwertuje składniki koloru, zgodnie z modelem HSB, na równoważny zestaw wartości dla domyślnego modelu RGB.

25

static float[] RGBtoHSB(int r, int g, int b, float[] hsbvals)

Konwertuje składniki koloru, zgodnie z domyślnym modelem RGB, na równoważny zestaw wartości barwy, nasycenia i jasności, które są trzema składowymi modelu HSB.

26

String toString()

Zwraca ciąg reprezentujący ten Color.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład koloru

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D)g;        
      Font plainFont = new Font("Serif", Font.PLAIN, 24);        
      g2.setFont(plainFont);
      g2.setColor(Color.red);
      g2.drawString("Welcome to TutorialsPoint", 50, 70); 
      g2.setColor(Color.GRAY);
      g2.drawString("Welcome to TutorialsPoint", 50, 120);  
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Sprawdź następujące dane wyjściowe

AWT BasicStroke Class

Wprowadzenie

Klasa BasicStroke określa kolory w domyślnej przestrzeni kolorów sRGB lub kolory w dowolnych przestrzeniach kolorów identyfikowanych przez ColorSpace.

Deklaracja klasy

Poniżej znajduje się deklaracja dla java.awt.BasicStroke klasa:

public class BasicStroke
   extends Object
      implements Stroke

Pole

Poniżej znajdują się pola dla java.awt.geom.Arc2D klasa:

  • static int CAP_BUTT - Kończy niezamknięte podścieżki i segmenty kresek bez dodatkowej dekoracji.

  • static int CAP_ROUND - Kończy niezamknięte podścieżki i segmenty kreskowe okrągłą dekoracją o promieniu równym połowie szerokości pióra.

  • static int CAP_SQUARE - Kończy niezamknięte ścieżki podrzędne i segmenty kresek rzutem kwadratowym, który rozciąga się poza koniec segmentu na odległość równą połowie szerokości linii.

  • static int JOIN_BEVEL - Łączy segmenty ścieżki, łącząc zewnętrzne narożniki ich szerokich konturów z prostym segmentem.

  • static int JOIN_MITER - Łączy segmenty ścieżki, wydłużając ich zewnętrzne krawędzie, aż się spotkają.

  • static int JOIN_ROUND - Łączy segmenty ścieżki, zaokrąglając rogi promieniem równym połowie szerokości linii.

Konstruktory klas

SN Konstruktor i opis
1

BasicStroke()

Konstruuje nowy BasicStroke z wartościami domyślnymi dla wszystkich atrybutów.

2

BasicStroke(float width)

Konstruuje ciągły BasicStroke o określonej szerokości linii i domyślnych wartościach stylów zakończenia i łączenia.

3

BasicStroke(float width, int cap, int join)

Konstruuje bryłę BasicStroke z określonymi atrybutami.

4

BasicStroke(float width, int cap, int join, float miterlimit)

Konstruuje bryłę BasicStroke z określonymi atrybutami.

5

BasicStroke(float width, int cap, int join, float miterlimit, float[] dash, float dash_phase)

Konstruuje nowy BasicStroke z określonymi atrybutami.

Metody klasowe

SN Metoda i opis
1

Shape createStrokedShape(Shape s)

Zwraca Shape, którego wnętrze definiuje obrysowany kontur określonego Shape.

2

boolean equals(Object obj)

Sprawdza, czy określony obiekt jest równy temu BasicStroke, najpierw sprawdzając, czy jest to BasicStroke, a następnie porównując jego atrybuty szerokości, łączenia, zakończenia, ograniczenia kąta ścięcia, kreski i kreski z atrybutami tego BasicStroke.

3

float[] getDashArray()

Zwraca tablicę reprezentującą długości segmentów myślników.

4

float getDashPhase()

Zwraca bieżącą fazę kreski.

5

int getEndCap()

Zwraca styl zakończenia.

6

int getLineJoin()

Zwraca styl łączenia linii.

7

float getLineWidth()

Zwraca szerokość linii.

8

float getMiterLimit()

Zwraca granicę połączeń ukośnych.

9

int hashCode()

Zwraca kod skrótu dla tego skoku.

Dziedziczone metody

Ta klasa dziedziczy metody z następujących klas:

  • java.lang.Object

Przykład BasicStroke

Utwórz następujący program java, używając dowolnego wybranego edytora, powiedzmy D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D)g;        
      g2.setStroke(new BasicStroke(3.0f));
      g2.setPaint(Color.blue);

      Rectangle2D shape = new Rectangle2D.Float();
      shape.setFrame(100, 150, 200,100);
      g2.draw(shape);

      Rectangle2D shape1 = new Rectangle2D.Float();
      shape1.setFrame(110, 160, 180,80);
      g2.setStroke(new BasicStroke(1.0f));
   
      g2.draw(shape1);
      Font plainFont = new Font("Serif", Font.PLAIN, 24);        
      g2.setFont(plainFont);
      g2.setColor(Color.DARK_GRAY);
      g2.drawString("TutorialsPoint", 130, 200);
   }
}

Skompiluj program za pomocą wiersza poleceń. Iść doD:/ > AWT i wpisz następujące polecenie.

D:\AWT>javac com\tutorialspoint\gui\AwtGraphicsDemo.java

Jeśli nie wystąpi błąd, oznacza to, że kompilacja się powiodła. Uruchom program za pomocą następującego polecenia.

D:\AWT>java com.tutorialspoint.gui.AwtGraphicsDemo

Sprawdź następujące dane wyjściowe