Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science

Podobne dokumenty
Java biblioteka Swing

Programowanie zdarzeniowe

Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science

Zaawansowane programowanie obiektowe. Wykład 3 część 2

Programowanie w języku JAVA. Wykład IV Swing - GUI

Programowanie graficznego interfejsu użytkownika. Wykład 8. Maciej Wołoszyn 10 maja 2006

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Język JAVA podstawy. Wykład 5, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Tworzenie elementów graficznych

Java niezbędnik programisty spotkanie nr 12. Graficzny interfejs użytkownika

Java - interfejs graficzny

Kurs programowania. Wykład 4. Wojciech Macyna. 23 marca 2016

SWING. dr Jarosław Skaruz

Programowanie Obiektowe GUI

PROGRAMOWANIE APLIKACJI MULTIMEDIALNYCH

Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com

Programowanie w języku Java

Podstawy Języka Java

Klasy abstrakcyjne. Klasę abstrakcyjną tworzymy przy pomocy modyfikatora abstract

Używanie menadżerów ułożenia Domyślnie każdy kontener ma związany ze sobą właściwy mu menadżer ułożenia: BorderLayout

Tworzenie i obsługa graficznego interfejsu uŝytkownika

Informatyka I. Interfejs GUI wysokiego poziomu. Biblioteka Swing. Programowanie zdarzeniowe. Politechnika Warszawska Wydział Transportu 2018

Programowanie obiektowe

Programowanie Multimediów. Programowanie Multimediów JAVA. programowanie GUI. (AWT i Swing) [1]

Programowanie graficznych interfejsów użytkownika

Aplikacje w środowisku Java

Programowanie obiektowe

Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin

Podstawy Swing. Tomasz Borzyszkowski

Programowanie obiektowe

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

Programowanie Obiektowe Java

Architektura interfejsu użytkownika

Aplikacje w Javie wykład 12 Programowanie GUI

Programowanie w języku Java WYKŁAD

Swing ćwiczenia 2 opis

1. Umieść kursor w miejscu, w którym ma być wprowadzony ozdobny napis. 2. Na karcie Wstawianie w grupie Tekst kliknij przycisk WordArt.

Graphic User Interfaces pakiet Swing

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Formatowanie komórek

1. Język JAVA. 1. Pierwszy program. 2. Kalkulator. 3. Klasy. 4. Dziedziczenie

Techniki wstawiania tabel

Dodanie nowej formy do projektu polega na:

Jeżeli pole Krawędź będzie zaznaczone uzyskamy obramowanie w całej wstawianej tabeli

Cel ćwiczenia: Nabycie umiejętności poruszania się w przestrzeni programu Kuka.Sim Pro oraz zapoznanie się z biblioteką gotowych modeli programu.

INSTRUKCJA DO ĆWICZENIA 5

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

Zaznaczanie komórek. Zaznaczenie pojedynczej komórki polega na kliknięciu na niej LPM

Praca dyplomowa magisterska

JAVA Materiały do laboratorium III wersja niezaawansowana Marcin Borkowski WSEiZ czerwiec 2006

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych

Stworzenie programu KSIĄŻKA ADRESOWA posiadającego funkcjonalności przechowywania danych o osobach dodanych przez użytkownika.

SWING ZAGADNIENIA: wprowadzenie, kontenery I komponenty, LayoutManager, komponenty tekstowe.

Builder (budowniczy) Cel: Przykład:

Laboratorium z informatyki sem.iii/ćw. 4 Wydział Transportu PW /19

Arkusz strona zawierająca informacje. Dokumenty Excela są jakby skoroszytami podzielonymi na pojedyncze arkusze.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

WASM AppInventor Lab 3. Rysowanie i animacja po kanwie PODSTAWY PRACY Z KANWAMI

KATEGORIA OBSZAR WIEDZY

Zadanie 3. Praca z tabelami

Java Podstawy. Michał Bereta

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Joyce Cox Joan Lambert. Microsoft Access Krok po kroku. Przekład: Jakub Niedźwiedź

Aplikacje w Javie wykład 12 Programowanie GUI

MsAccess - ćwiczenie nr 3 (zao) Budowa formularzy

Dynamiczne i wydajne tworzenie interfejsu. Piotr Michałkiewicz

Delphi podstawy programowania. Środowisko Delphi

1.Formatowanie tekstu z użyciem stylów

Programowanie w Javie Wykład 6 Okienka w Javie (AWT)

Rozdział VI. Tabele i ich możliwości

Scenariusz Lekcji. Część organizacyjna:

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Arkusz kalkulacyjny EXCEL

Visual Studio instalacja

Fragment tekstu zakończony twardym enterem, traktowany przez edytor tekstu jako jedna nierozerwalna całość.

Sylabus Moduł 2: Przetwarzanie tekstów

Dostosowanie szerokości kolumn

UONET+ moduł Dziennik

KARTA MODUŁU KSZTAŁCENIA

GRID LAYOUT. Waldemar Korłub. Aplikacje i Usługi Internetowe KASK ETI Politechnika Gdańska

Swing Application Framework czyli tam i z powrotem. Copyright Piotr Kochański & Erudis,

Programowanie Obiektowe Java

Informatyka i Ekonometria Programowanie komputerów Ćwiczenia Tworzenie aplikacji wykorzystaniem graficznego interfejsu użytkownika - Swing.

16) Wprowadzenie do raportowania Rave

Systemy operacyjne na platformach mobilnych

MVVM Light Toolkit. Julita Borkowska

UONET+ moduł Dziennik. Dokumentowanie lekcji w systemie UONET+

Podstawy technologii WWW

Kompleksowe tworzenie aplikacji klasy Desktop z wykorzystaniem SWT i

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

Grafika i komunikacja człowiek komputer Laboratorium. Część 1: Wstęp do grafiki

Rozdział 1. Przegląd bramofonu SAFE

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

Budowa aplikacji z graficznym interfejsem użytkownika - GUI (Graphic User Interface)

GUI - projektowanie interfejsów cz. II

Platformy Technologiczne

Przed rozpoczęciem pracy otwórz nowy plik (Ctrl +N) wykorzystując szablon acadiso.dwt

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca Norbert Potocki db4o

Transkrypt:

Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science mluckner@mini.pw.edu.pl http://www.mini.pw.edu.pl/~lucknerm

Wszystkie komponenty są rozmieszczane przez domyślny menadżer wyglądu Menadżer wyglądu aranżuje kontrolki wewnątrz okna 2

Każdy pojemnik (Container) ma przypisany menadżer wyglądu Menadżer wyglądu jest dowolną klasą implementującą interfejs LayoutManager Przypisuje się go przy pomocy metody setlayout() void setlayout(layoutmanager layoutmanager) Jeżeli nie wywołamy metody setlayout używany będzie domyślny menadżer 3

Usuń menadżera wyglądu setlayout(null ) Ustal pozycję komponentów poprzez metodę setbounds( ) wywoływaną dla każdego z nich osobno Rozmiar komponentów jest kontrolowany przez dodatkowe metody getpreferredsize( ) getminimumsize( ) 4

Wady Ustalanie ręcznie położenia wielu kontrolek jest ciężką pracą Czasami informacje na temat szerokości i długości kontrolek są niedostępne lub nieaktualne Zalety Niektóre efekty są trudne do uzyskania w sposób automatyczny 5

FlowLayout BorderLayout GridLayout CardLayout BoxLayout SpringLayout GridBagLayout GroupLayout 6

Domyślny menadżer Prosty układ, kontrolki układają się jak tekst. Domyślnie kontrolki są układane jedna po drugiej poczynając od górnego lewego narożnika 7

FlowLayout( ) FlowLayout(int how) FlowLayout(int how, int horz, int vert) how Wyrównanie linii horz Horyzontalna przestrzeń między kontrolkami vertz Wertykalna przestrzeń między kontrolkami 8

Wspólny styl dla okien. Tworzy cztery wąskie przestrzenie na krawędziach i dużą przestrzeń w centrum 9

BorderLayout( ) BorderLayout(int ho rz, int vert) Komponenty dodajemy do regionów void add(component component, Object region) Regiony BorderLayout.PAGE_START BorderLayout.PAGE_END BorderLayout.LINE_START BorderLayout.LINE_END BorderLayout.CENTER Lub kierunki (BorderLayout.NORTH ) 10

Układa komponenty w dwu wymiarowej tabeli Wszystkie obiekty mają taki sam rozmiar 11

GridLayout( ) GridLayout(int numrow s, int numcolumns) GridLayout(int numrow s, int numcolumns, int horz, int vert) GridLayout( ) tworzy jedną kolumnę numrows Liczba wierszy numcolumns Liczba kolumn 12

Składa się z kilku kart Każda z kart może być w dowolnej chwili przesunięta na wierzch Zazwyczaj karty są definiowane jako JPanel 13

CardLayout( ) CardLayout(int horz, int vert) Dodawanie kart void add(component panelobj, Object name) Nawigacjia void first(container deck) void last(container deck) void next(container deck) void previous(container deck) void show(container deck, String cardname) 14

15

Ustawia kontrolki jedna nad drugą lub w jednym rzędzie Używa niewidocznych komponentów jako wypełniaczy 16

BoxLayout(Container targ et, int axis) axis definiuje kierunek Wypełniacze, które można dodać do kontenera Box.createRigidArea(size) Box.createHorizontalGlue() Box.createVerticalGlue() new Box.Filler(minSize, prefsize, maxsize) 17

Bardzo elastyczny menadżer wyglądu, który emuluje cechy innych menadżerów A także skomplikowany i trudny w użyciu Przydatny do tworzenia formularzy 18

19

Dostarcza więcej swobody w rozmieszczaniu komponentów Każdy komponent może mieć inny rozmiar, Każdy wiersz może mieć inną liczbę kolumn 20

Położenie i rozmiar każdego komponentu jest definiowana poprzez dołączone do niego niezmienniki. Niezmienniki są przechowywane w obiekcie typu GridBagConstraints. Komponenty są dodawane wraz z zestawem niezmienników add(component comp, GridBagConstraints cons) 21

gridx, gridy Definiuje wiersz i kolumnę, w której leży górny lewy róg komponentu gridwidth, gridheight Definiuje liczbę kolumn (gridwidth) i wierszy (gridheight) zajmowanych przez komponent. fill Definiuje sposób wypełnienia dla komponentów mniejszych niż wielkość komórki. 22

ipadx, ipady Definiuje dodatkową przestrzeń wokół komponentu insets Definiuje zewnętrzną przestrzeń wokół komponentu anchor Definiuje położenie wewnątrz komórki weightx, weighty Dystrybucja kontrolki pomiędzy kolumnami (weightx) i wierszami(weighty); 23

24

Działa oddzielnie dla układu horyzontalnego i vertykalnego 25

Układ horyzontalny Układ wertykalny 26

mluckner@mini.pw.edu.pl 5/6/2014 27

28

FlowLayout Panel z przyciskami, rozwiązania tymczasowe BorderLayout Główne okno GridLayout Zestaw jednakowych komponentów CardLayout Panel opcji BoxLayout, SpringLayout Proste formularze GridBagLayout, GroupLayout Złożone interfejsy 29

Unikaj narzędzi, które nie opierają interfejsu na menadżerach wyglądu Narzędzie powinno przetłumaczyć działania projektanta na operacje w ramach GroupLayout lub GridBagLayout Netbeans Swing GUI Builder Eclipse Window Builder Pro 30