GUI - projektowanie interfejsów cz. II

Podobne dokumenty
Interfejsy w Java. Przetwarzanie równoległe. Wątki.

Obsługa zdarzeń. Wykład 4

Programowanie zdarzeniowe

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

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

Programowanie zdarzeniowe

Programowanie Obiektowe GUI

Graphic User Interfaces pakiet Swing

Architektura interfejsu użytkownika

Aktualizacja Agencja3000 oraz Javy

SWING. dr Jarosław Skaruz

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Programowanie graficznych interfejsów użytkownika

Java Podstawy. Michał Bereta

Programowanie obiektowe

Załącznik techniczny przedmiotu zamówienia komponentu

Wprowadzenie do programowania aplikacji mobilnych

Java biblioteka Swing

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

LABORATORIUM 7 Cel: 1_1

Podstawowe informacje o apletach

Dodawanie grafiki i obiektów

Wymagania oceniające dla klasy II 2018/2019

Java SE Laboratorium nr 5. Temat: Obsługa zdarzeń

emszmal 3: Eksport do WAPRO WF-FaKir dla Windows (plugin dostępny w wersji ecommerce)

Po wstawieniu tabeli (i zawsze wtedy, gdy w tabeli jest kursor) pojawia się na wstążce nowa grupa zakładek o nazwie Narzędzia tabel.

Laboratorium 8 ( Android -pierwsza aplikacja)

Edytor tekstu OpenOffice Writer Podstawy

Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej.

Język Java część 2 (przykładowa aplikacja)

KONFIGURACJA PRZEGLĄDAREK. Poniższa konfiguracja dedykowana jest dla Bankowości Internetowej SGB

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

Visual Studio instalacja

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

Google Earth. Co to jest Google Earth? Co to jest KML? Skąd można pobrać Google Earth?

W dowolnej przeglądarce internetowej należy wpisać poniższy adres:

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

Komputery I (2) Panel sterowania:

Dodanie nowej formy do projektu polega na:

Programowanie obiektowe

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej

Podręcznik użytkownika programu. Ceremonia 3.1

Kontenery i komponenty graficzne

I. EDUKACJA WCZESNOSZKOLNA

Wymagania Uczeń zna zasady bezpiecznej pracy z komputerem. Uczeń stosuje się do regulaminu szkolnej pracowni komputerowej.

PRZEWODNIK PO ETRADER PEKAO ROZDZIAŁ XVIII. ANALIZY I KOMENTARZE SPIS TREŚCI

Podstawy Swing. Tomasz Borzyszkowski

Prezentacje multimedialne. MS PowerPoint 2003

Programowanie aplikacji mobilnych

Platforma e-learningowa

Nr: 15. Tytuł: Kancelaris w systemie Windows 8 i Windows 8.1. Data modyfikacji:

SZCZEGÓŁOWY OPIS NOWOŚCI W SDIG UDOSTĘPNIONYCH W LIPCU 2012

Instrukcja obsługi aplikacji X-Trade DDE To MetaStock Chart 1.1

INSTRUKCJA UŻYTKOWNIKA

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

Podstawowe funkcjonalności interfejsu. - co warto wiedzieć o interfejsie Mozart-a

Aplikacja do podpisu cyfrowego npodpis

Wymagania Uczeń zna zasady bezpiecznej pracy z komputerem. Uczeń stosuje się do regulaminu szkolnej pracowni komputerowej.

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej Pozwolenia wodnoprawne i zgłoszenia przydomowych oczyszczalni ścieków

Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz

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

Laboratorium z Grafiki InŜynierskiej CAD. Rozpoczęcie pracy z AutoCAD-em. Uruchomienie programu

Kurs walut. Specyfikacja projektu. Marek Zając

etrader Pekao Podręcznik użytkownika Jak zacząć pracę z etrader Pekao?

Dane z programu dla wersji jednostanowiskowej są zapisywane w katalogu :

PRZEWODNIK PO ETRADER PEKAO ROZDZIAŁ I. JAK ZACZĄĆ PRACĘ Z ETRADER PEKAO? SPIS TREŚCI

Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska

1.3. Tworzenie obiektów 3D. Rysunek 1.2. Dostępne opcje podręcznego menu dla zaznaczonego obiektu

Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85

Jeżeli w komputerze była już zainstalowana inna wersja Javy może pojawić się komunikat

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

Instrukcja użytkownika. Aplikacja dla Comarch ERP XL

Tworzenie strony www - jako projektu z Mechaniki i budowy maszyn

Oficyna Wydawnicza UNIMEX ebook z zabezpieczeniami DRM

MS Access formularze

1. Dockbar, CMS + wyszukiwarka aplikacji Dodawanie portletów Widok zawartości stron... 3

1. Swor generacja pliku xml znacznik <strona nazwisko>, <opis> 2. Sprawa zakładka Wierzytelności sortowanie pozycji

etrader Pekao Podręcznik użytkownika Portfel inwestycyjny

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

Instalacja. Dane z programu dla wersji jednostanowiskowej są zapisywane w katalogu :

PWŚG Ćwiczenia 13. Ukończoną pracę należy przesłać na adres lub

URLOPY BY CTI. Instrukcja obsługi

Sky-Shop.pl. Poradnik. Pierwsze kroki: Importowanie własnego pliku XML Integracje z hurtowniami

2017 Electronics For Imaging, Inc. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym

Wstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1

Minimalna wspierana wersja systemu Android to zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4.

Ćwiczenia nr 2. Edycja tekstu (Microsoft Word)

Tworzenie gier na urządzenia mobilne

VectraPortal. VectraPortal. wersja Instrukcja użytkownika Podstawowa funkcjonalność serwisu. [czerwiec 2016]

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

Instrukcja obsługi przełącznika KVM ATEN CS661. Opis urządzenia. Instalacja urządzenia

Portal SRG BFG. Instrukcja korzystania z Portalu SRG BFG

PROBLEMY TECHNICZNE. Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS

Podręczna pomoc Microsoft Power Point 2007

Formy dialogowe w środowisku Gnome

Padlet wirtualna tablica lub papier w Internecie

Rys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom:

Instrukcja użytkownika programu

Instalacja i obsługa aplikacji MAC Diagnoza EW

enova Instalacja wersji demo

Transkrypt:

Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny w Katowicach Wykład 3

Elementy Swing wszystkie elementy graficzne (przyciski, kontrolki) rysowane są od zera z poziomu Javy; ten sam wygląd i zachowanie na wszystkich platformach ze wsparciem Javy; brak efektów graficznych związanych z konkretnym systemem operacyjnym; możliwość symulowania wyglądu właściwego np. dla komponentów systemu Windows.

Rysunek: Przyciski i ich rodzaje

Rysunek: Focus na przycisku i reakcja na naciśnięcie

Rysunek: Komponenty i ich rozmieszczenie

Rysunek: Komponent TabPane Rysunek: Komponent TabPane i kolory

Komponenty związane z wyborem ComboBox; List; Button Group; Spinner; Tree (opcjonalnie). Wykorzystanie powyższych elementów wymaga zbudowania pewnego słownika na początek. Może to być stały zestaw, którym komponenty są inicjalizowane podczas uruchomienia aplikacji. Alternatywnie wartości mogą być dobierane dynamicznie np. jako: wartości z pliku; elementy zdefiniowane wcześniej przez użytkownika; wartości pobrane z bazy danych; inne, zewnętrzne źródło, jak np. strona internetowa.

Okna Swing Wykorzystanie gotowych okien, jako elementów składowych całej aplikacji: File Chooser; Color Chooser; Option Pane ; Calendar. Rysunek: Przykład użycia kalendarza

Rysunek: Interakcja z użytkownikiem Interakcja użytkownik jest najsłabszym ogniwem (w działającym systemie); zawsze musimy zakładać, że użytkownik kliknie/ wybierze coś dziwnego; Podaj liczbę aaa ; Podaj dwie daty, pierwsza powinna poprzedzać drugą: 10 stycznia 2020, 5.12.1999

Interakcja II ograniczamy możliwość wprowadzania danych do minimum; dajemy jasno określony wybór; pamiętamy o różnych formatach dat, różnych strefach czasowych, różnych walutach, różnych formatowaniach liczb (przecinek zamiast kropki w liczbie); zapisujemy dane już wprowadzone przez użytkownika w sytuacji, kiedy do wypełnienia jest długi formularz; dodajemy dymki z podpowiedzią.

Komponenty menu ograniczamy do minimum liczbę wyskakujących okien; ograniczamy liczbę wyskakujących alertów; elementy wewnątrz menu posortowane alfabetycznie; przyciski (w szczególności typu RadioButton) pogrupowane; zapamiętujemy wybory użytkownika (np. zaznaczone checkboxy); pasek menu w domyślnym miejscu (lewy górny róg).

Elementy GUI a efekty wizualne gradient tła pozwala podkreślić elementy znajdujące się na pierwszym planie; dodanie tła w aplikacji nie powinno mieć żadnych wyraźnych elementów przyciągających wzrok (chyba, że chodzi np. o logo, które jest jednocześnie łączem); cały interfejs bazuje na mocno ograniczonej liczbie kolorów o różnej jasności i nasyceniu; stylizowane rogi są dobre do podkreślenia podgrup np grupa przycisków zawierająca podgrupę RadioButton; pozwalaj użytkownikowi na dobór palety kolorów w ustawieniach aplikacji.

Elementy GUI a zdarzenia elementy GUI generują zdarzenia; rodzaj zdarzenia opisywany jest przez NazwaEvent (ActionEvent, MouseEvent, KeyEvent); kod obsługi zdarzenia powiązany jest z interfejsem NazwaListener (ActionListener, KeyListener); w aplikacjach mobilnych jest nieco łatwiej wystarczy obsługa zdarzenia OnClisk; z poziomu kodu w Java łatwo zrozumieć cały mechanizm: 1 przycisk.addactionlistener(sluchacz); 2 ActionListener sluchacz = new ActionListener() 3 public void actionperformed(actionevent z) komponent powiązany jest ze słuchaczem, który jest obiektem implementującym okresloną metodę.

Rodzaje interfejsów obserwatorów ActionListener kliknięcie przycisku; MouseListener operacje wykonywane myszką (mouseclicked, mousereleased, mouseentered, mousereleased) np. zmiana tekstu po najechaniu myszki (lub zmiana w hiperłącze); MouseMotionListener ruch kursora myszy nad komponentem; KeyListener wciśnęcie przycisku na klawiaturze; TextListener zmiana tekstu wewnątrz określonego elementu; WindowListener zdarzenia związane z oknem minimalizacja, maksymalizacja, okno aktywne / okno nieaktywne.

*Wątki a GUI kiedy nie mamy API do strony; kiedy nie mamy ustalonego formatu pobierania danych (często pojawia się JSON w obsłudze zbliżony do XML); konieczność pobierania danych bezpośrednio ze strony; zbyt częste odpytywanie serwera może grozić banem; zbyt częste odpytywanie serwerwa w jednym wątku blokuje całą aplikację; wątki do wykonywania równolegle tej samej akcji najczęściej pojawia się przykład z paskiem postępu działającym niezależnie od całej aplikacji; a co z połączeniem z serwerem w tle?

Rysunek: Potrzebujemy klasy implementującej interfejs Runnable

Rysunek: Obsługa formatu JSON

Rysunek: JSON vs XML

Rysunek: Implementacja metody Run wymuszenie implementacji poprzez implementację interfejsu Runnable

Rysunek: Odpalenie wątków do pobierania danych

Pobieranie i wizualizacja danych dane napływające w czasie rzeczywistym bez możliwości przedstawienia na wykresie; dane pobierane w paczkach, gdzie zachodzi konieczność aktualizacji dotychczasowych wyników; konieczność pobrania dużej liczby danych i wyświetlenia dla użytkownika fragmentów (JSON, XML i inne formaty); brak API i konieczność pobierania danych bezpośrednio ze źródła strony.

Dziękuję za uwagę