Przykładowa dostępna aplikacja w Visual Studio - krok po kroku

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

Informatyka II. Laboratorium Aplikacja okienkowa

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

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

Programowanie obiektowe

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

Prosta książka telefoniczna z wykorzystaniem zapisu do pliku

Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia

Zaawansowane aplikacje internetowe - laboratorium

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

Lokalizacja Oprogramowania

Wykład 10 Kolekcje, pliki tekstowe, c.d. Przykład: Notatnik

Programowanie w środowisku graficznym GUI

Informatyka I : Tworzenie projektu

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

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Instrukcja tworzenia aplikacji bazodanowej opartej o technologię Oracle i platformę.net

Tworzenie szablonów użytkownika

Instrukcja laboratoryjna cz.3

Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio

Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych

Nowy interfejs w wersji 11.0 C8 BETA

Laboratorium 8 ( Android -pierwsza aplikacja)

Instrukcja obsługi programu:

Laboratorium 1 - Programowanie proceduralne i obiektowe

2. Kliknij Insert->Userform. Jeżeli Toolbox nie pojawi się automatycznie, kliknij View -> Toolbox. Otrzymany widok powinien być jak poniżej.

2. W oknie dialogowym Choose Toolbox Items w zakładce.net Framework Components naciskamy przycisk Browse...

Rys. 3. Kod elementów na stronie po dodaniu kontrolek podstawowych.

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Ćwiczenie 5 Menu programu

Dodanie nowej formy do projektu polega na:

Praca w środowisku Visual Studio 2008, Visual C

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

Laboratorium programowania urządzeń mobilnych

Tablet bezprzewodowy QIT30. Oprogramowanie Macro Key Manager

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Programowanie Obiektowe GUI

Leszek Stasiak Zastosowanie technologii LINQ w

Laboratorium 7 Blog: dodawanie i edycja wpisów

INSTRUKCJA INSTALACJI I OBSŁUGI GPG4Win

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod:

Projekt Hurtownia, realizacja rejestracji dostaw produktów

2. Dostosuj listę Szybkiego Dostępu

Aktywności są związane z ekranem i definiują jego wygląd. Dzieje się to poprzez podpięcie do aktywności odpowiedniego widoku.

KaŜdy z formularzy naleŝy podpiąć do usługi. Nazwa usługi moŝe pokrywać się z nazwą formularza, nie jest to jednak konieczne.

Krótki kurs obsługi środowiska programistycznego Turbo Pascal z 12 Opracował Jan T. Biernat. Wstęp

Laboratorium 10 - Web Services

Aplikacje WWW - laboratorium

Zamówienia samochodów nowych

Systemy wirtualnej rzeczywistości. Komponenty i serwisy

Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:

Wprowadzenie do systemu Delphi

Program Zamiana towarów dla Subiekta GT.

Programowanie obiektowe i zdarzeniowe wykład 1 Wprowadzenie do programowania zdarzeniowego

xmlns:prism= c. <ContentControl prism:regionmanager.regionname="mainregion" />

Zasady Programowania (Projektowanie) C++ - część 6 1/9 Programowanie Wizualno Obiektowe (3)

Nowe funkcjonalności wersji

Ćwiczenia 9 - Swing - część 1

Jak zainstalować i skonfigurować komunikator MIRANDA, aby wyglądał i funkcjonował jak Gadu Gadu Tutorial by t800.

Ćwiczenie 6. Wiadomości ogólne.

Aplikacje WWW - laboratorium

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 1

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

tutaj Poniższe makro nie zadziała dla pakietu Open lub Libre Office! O co chodzi?

Instrukcja obsługi DHL KONWERTER 1.6

Wprowadzenie do środowiska Visual Studio cz. 2 (ćwiczenie wykonywane zdalnie) Wykorzystanie Wirtualnego portu COM

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Rozdział 5. Administracja kontami użytkowników

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Wprowadzenie do projektu QualitySpy

akademia androida Intencje oraz URI część III

Ekran główny lista formularzy

Instrukcja instalacji oprogramowania Flow!Works na komputerze z systemem Windows 7

Java Platform Micro Edition

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEB do aplikacji Wonderware InTouch Machine Edition

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEBowego/Secure

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

POLSKI. Macro Key Manager Podręcznik użytkownika

Ćwiczenie 8. Kontrolki serwerowe

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Windows Workflow Foundation (wprowadzenie - prosty przykład Sequential Workflow):

Dodawanie i modyfikacja atrybutów zbioru

Laboratorium 9 (Więcej Aktywności, w Androidzie)

Instrukcja redaktora strony

LABORATORIUM 6: ARKUSZ MS EXCEL JAKO BAZA DANYCH

Aplikacje internetowe

Instrukcja do aplikacji Trezor BUZA Moduł Wykonanie Planów Finansowych

NOWY SZABLON IMPORTU PLIKÓW

Programowanie niskopoziomowe

Laboratorium Systemów SCADA

5.4. Tworzymy formularze

Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows

TIME MARKER. Podręcznik Użytkownika

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

jest dostępne na różne systemy operacyjne. Niniejsza instrukcja opisuje podstawowe operacje i opcje niezbędne do rozpoczęcia pracy w tym programie.

Transkrypt:

Przykładowa dostępna aplikacja w Visual Studio - krok po kroku Zadaniem poniższego opisu jest pokazanie, jak stworzyć aplikację z dostępnym interfejsem. Sama aplikacja nie ma konkretnego zastosowania i obsługa interfejsu nie została zaimplementowana, poza tymi elementami, których zademonstrowanie tego wymagało. W języku C# 1. W Visual Studio tworzymy nowy nowy projekt. Jako typ projektu wybieramy Windows Forms Application. 2. Modyfikujemy właściwości Form1, ustawiając rozmiar czcionki na 14.0pt. Dla tego przykładu właściwość Text (tytuł okna) zmieniamy na Dostępna aplikacja. Właściwości Accessibility description nadajemy wartość Okno główne dostępnej aplikacji (pomijając znaki cudzysłowu). Właściwość AccessibilityName ustawiamy na Dostępna aplikacja. 3. Teraz dodajemy potrzebne kontrolki zwracając uwagę na wartość właściwości TabIndex każdej z nich. Ta kwestia została dokładniej opisana Tutaj. Najprościej dodać kolejno: MenuStrip - menu główne aplikacji Label - Napis kolorowy nr 1 Label - Napis kolorowy nr 2 Label - Napis kolorowy nr 3 Label - etykieta opisująca pole edycyjne (Imię) TextBox - pole edycyjne imie

Label - etykieta dla pola Nazwisko TextBox - pole edycyjne nazwisko Label - etykieta dla pola Adres e-mail TextBox - pole email Label - etykieta dla listy wielu wyborów Zainteresowania CheckedListBox - lista wielu wyborów zainteresowania Label - etykieta dla pola edycyjnego Kilka słów o sobie TextBox - tekstowe pole edycyjne osobie GroupBox - kontener wyborszkoly grupujący przyciski typu Radio odpowiadające poziomom wykształcenia do wyboru RadioButton - przycisk Podstawowe RadioButton - przycisk Zawodowe RadioButton - przycisk Średnie RadioButton - przycisk Wyższe Button - Anuluj Button - Zatwierdź NotifyIcon - notifyicon1 - dla zademonstrowania użycia tego komponentu Timer - migtimer - potrzebny do zademonstrowania użycia funkcji Windows API FlashWindow 4. Teraz należy dodać elementy menu i nadać odpowiednie wartości właściwościom elementów interfejsu.

W efekcie okno Designera tworzonej aplikacji powinno wyglądać podobnie jak na poniższym zrzucie ekranu: Jak już wcześniej zostało napisane, należy pamiętać o dodawaniu skrótów klawiszowych do elementów menu i podmenu, a także o nadawaniu właściwościom tych elementów wartości zawierających rzetelną informację dla użytkownika. Więcej o dostępności menu i podmenu można przeczytać w rozdziale Dostępne menu i podmenu.

5. Podobnie jak w przypadku menu postępujemy z etykietami i kontrolkami w aplikacji. Edytując ich właściwości, upewniamy się, że właściwość TabIndex etykiety jest dokładnie o 1 mniejsza od właściwości TabIndex kontrolki, którą ta etykieta opisuje. Dokładnie można o tym przeczytać w rozdziale Dostępne Kontrolki i etykiety. Warto zwrócić uwagę na brak etykiety odnoszącej się do grupy przycisków typu Radio (w kodzie źródłowym zmienna o nazwie wyborszkoly). W tym przypadku etykieta ta jest zbędna, ponieważ właściwość Text kontenera zawiera znak & poprzedzający literę W. To daje nam klawisz skrótu i umożliwia szybką nawigację do tej grupy przycisków. Kontener (GroupBox) nie ma dostępnej właściwości UseMnemonic.

6. Do kodu klasy Form1 (plik źródłowy Form1.cs) dopisujemy metodę automatycznie ustawiającą schemat kolorów dla aplikacji w zależności od wartości właściwości SystemInformation.HighContrast (patrz Wysoki kontrast, Automatycznie dostosuj schemat kolorów): private void UstawKolory() if (SystemInformation.HighContrast) //użyj kolorów systemowych ElementKolorowy1.BackColor = SystemColors.Window; ElementKolorowy1.ForeColor = SystemColors.WindowText; ElementKolorowy2.BackColor = SystemColors.Window; ElementKolorowy2.ForeColor = SystemColors.WindowText; ElementKolorowy3.BackColor = SystemColors.Window; ElementKolorowy3.ForeColor = SystemColors.WindowText; //... else //użyj własnych kolorów ElementKolorowy1.BackColor = Color.Green; ElementKolorowy1.ForeColor = Color.Red; ElementKolorowy2.BackColor = Color.White; ElementKolorowy2.ForeColor = Color.black; ElementKolorowy3.BackColor = Color.Blue; ElementKolorowy3.ForeColor = Color.Yellow; //... 7. Tworzymy metodę obsługującą zdarzenie systemowe UserPreferenceChanged (patrz Zdarzenie systemowe UserPreferenceChanged): public void UserPreferenceChanged(object sender, Microsoft.Win32.UserPreferenceChangedEventArgs e) UstawKolory(); 8. Teraz należy zadbać o obsługę Opcji ułatwień dostępu - Wysoki kontrast. W tym celu modyfikujemy kod konstruktora Form1 tak, aby przy uruchomieniu aplikacji ustawienie tej opcji było sprawdzane i stosownie do jego wartości był ustawiany schemat kolorów (patrz Wysoki kontrast). Kod konstruktora powinien wyglądać następująco:

public Form1() InitializeComponent(); UstawKolory(); Microsoft.Win32.SystemEvents.UserPreferenceChanged += new Microsoft.Win32.UserPreferenceChangedEventHandler( this.userpreferencechanged); 9. Następnym krokiem musi być zmodyfikowanie kodu metody Dispose w taki sposób, aby przy zamknięciu aplikacji, poza głównym wątkiem zwalniana była również obsługa zdarzenia systemowego UserPreferenceChanged. Szczegóły zostały przedstawione w rozdziale Metoda Dispose... Oto kod rozbudowanej metody Dispose: protected override void Dispose( bool disposing ) if (disposing) if (components!= null) components.dispose(); Microsoft.Win32.SystemEvents.UserPreferenceChanged -= new Microsoft.Win32.UserPreferenceChangedEventHandler( this.userpreferencechanged); base.dispose(disposing); 10. Ustawiamy właściwości Icon i Text komponentu NotifyIcon. Szczegóły są opisane w rozdziale Komponent NotifyIcon. 11. Definiujemy obsługę zdarzenia Click dla notifyicon1 przez metodę notifyicon1_click (patrz plik źródłowy Form1.cs). 12. W kodzie klasy Form1 deklarujemy import zewnętrznej funkcji FlashWindow znajdującej się w bibliotece User32.dll (patrz Migocący tytuł okna - Użycie funkcji Windows API FlashWindow). 13. Do klasy Form1 dopisujemy metodę o nazwie mrugaj, aktywującą Timer migtimer (patrz metoda mrugaj w pliku Form1.cs). 14. Edytujemy właściwości Timera migtimer i definiujemy dla niego obsługę zdarzenia Tick (metoda migtimer_tick w pliku Form1.cs). Oto jej kod:

private void migtimer_tick(object sender, EventArgs e) mrugaj(); 15. Kompilujemy i uruchamiamy testową aplikację wciskając kombinację klawiszy Ctrl+F5. Okno aplikacji, które się wyświetli, powinno przypominać poniższy zrzut ekranu: Utworzona w ten sposób aplikacja spełnia wszystkie warunki dostępności i zawiera wszystkie najpotrzebniejsze mechanizmy do tworzenia dostępnych aplikacji. Do tego dokumentu dołączone są pliki źródłowe zawierające kod w języku C#, pliki źródłowe zawierające kod źródłowy w języku C++, kompletny projekt w wersji Visual Studio 2008 i projekt przekonwertowany dla wykorzystania w MS Visual Studio 2013 oraz pliki wykonywalne programów dla Windows 7+ i dla Windows XP.