Metodyka programowania. Visual Studio C# Formularze

Podobne dokumenty
Dodanie nowej formy do projektu polega na:

Visual Studio instalacja

Interfejs użytkownika (ang. User Interface, UI) w technice część urządzenia odpowiedzialna za interakcję z użytkownikiem

Biblioteka Windows Forms

Temat: Organizacja skoroszytów i arkuszy

Metodyka programowania. Edytor tekstu. Specyfikacja

wstawianie przycisków umożliwiających wybieranie wartości poprzez klikanie strzałek

Programowanie w technologii.net wykład 4 Aplikacja i okna

Metodyka programowania. Visual Studio C#

Programowanie w środowisku graficznym GUI

KROK 17 i 18. Cel: Tworzymy oddzielne okno - O autorze. 1. Otwórz swój program. 2. Skompiluj i sprawdź, czy działa prawidłowo.

Edytor tekstu OpenOffice Writer Podstawy

Metodyka programowania

Delphi podstawy programowania. Środowisko Delphi

Kurs programowania 2 - listy

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

Materiały do zajęć IX

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

1. Dodawanie integracji

I. Program II. Opis głównych funkcji programu... 19

Zaawansowane aplikacje internetowe - laboratorium

DODAJEMY TREŚĆ DO STRONY

Laboratorium - Podgląd informacji kart sieciowych bezprzewodowych i przewodowych

Visual Basic w programie Excel

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

1. Przypisy, indeks i spisy.

Wykład 5 Okna MDI i SDI, dziedziczenie

Podręcznik użytkownika programu. Ceremonia 3.1

Bazy danych raporty. 1. Przekopiuj na dysk F:\ bazę M5BIB.mdb z dysku wskazanego przez prowadzącego.

Ćwiczenie 6 Proste aplikacje - podstawowe komponenty.

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

Oficyna Wydawnicza UNIMEX ebook z zabezpieczeniami DRM

BAZY DANYCH Panel sterujący

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

Wykład 7 Okna dialogowe, menu, pasek stanu itp.

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

Laboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz

Informatyka Edytor tekstów Word 2010 dla WINDOWS cz.1

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

Kierunek: ETI Przedmiot: Programowanie w środowisku RAD - Delphi Rok III Semestr 5. Ćwiczenie 5 Aplikacja wielo-okienkowa

GroupWise Messenger 18 Mobile skrócona instrukcja obsługi

Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0

Ćwiczenie 1: Pierwsze kroki

Novell Messenger Mobile Szybki start

Instrukcja użytkowania

2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego

Fiery Remote Scan. Łączenie z serwerami Fiery servers. Łączenie z serwerem Fiery server przy pierwszym użyciu

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

Tworzenie prezentacji w MS PowerPoint

uczyć się bez zagłębiania się w formalnym otoczeniu,

Laboratorium 1 - Programowanie proceduralne i obiektowe

Tak przygotowane pliki należy umieścić w głównym folderze naszego programu. Klub IKS

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

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

ROZDZIAŁ 1: Instrukcja obsługi oprogramowania VMS

Kopiowanie przy użyciu szyby skanera. 1 Umieść oryginalny dokument na szybie skanera stroną zadrukowaną skierowaną w dół, w lewym, górnym rogu.

Prosta książka telefoniczna z wykorzystaniem zapisu do pliku

Tworzenie okna dialogowego w edytorze raportu SigmaNEST. część 1

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

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

Rozdział 2. Konfiguracja środowiska pracy uŝytkownika

Fiery Remote Scan. Uruchamianie programu Fiery Remote Scan. Skrzynki pocztowe

.NET Framework Technologia firmy Microsoft wprowadzona w 2002 roku

Przewodnik Szybki start

Programowanie obiektowe

Podręcznik użytkownika

Wyniki operacji w programie

Aktualizacja sterownika Podobnie jak w przypadku instalacji, podczas wykonywania tej operacji należy zalogować się jako administrator.

W kolejnym odcinku zajmiemy się umieszczaniem w naszym projekcie zestawu ikon służących szybkiemu korzystaniu z opcji programu.

Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych

Ćwiczenia 9 - Swing - część 1

Problemy techniczne. Zdejmowanie kontroli konta administratora systemu Windows na czas instalowania programów Optivum

Obiekty, własności, metody i zdarzenia

Informatyka Edytor tekstów Word 2010 dla WINDOWS cz.1

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

Makra Access 2003 wg WSiP Wyszukiwanie, selekcjonowanie i gromadzenie informacji Ewa Mirecka

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

Divar - Archive Player. Instrukcja obsługi

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

Pamiętałeś o kopiowaniu i zapisywaniu swojego programu do kolejnych folderów? Jeżeli tak, to:

Kolory elementów. Kolory elementów

1. Ćwiczenia z programem PowerPoint

Ćwiczenia z systemu operacyjnego WINDOWS

Tworzenie formularzy w Microsoft Office Word 2007

Kurs walut. Specyfikacja projektu. Marek Zając

Skróty klawiaturowe w systemie Windows 10

bla bla Guard podręcznik użytkownika

7.9. Ochrona danych Ochrona i zabezpieczenie arkusza. Pole wyboru

Platforma VULCAN. Jak rozpocząć pracę na Platformie VULCAN? Logowanie administratora do Platformy

Podstawy technologii WWW

Galileo v10 pierwszy program

TURNINGPOINT KROKI DO URUCHOMIENIA TESTU NA PC

Dokumentacja użytkowa

DesignCAD 3D Max 24.0 PL

Wstęp 2. Instalacja 2. Uruchomienie odbierania faksów 2. Monitowanie odbierania faksu 3. Zakończenie pracy programu faksowego 3

UONET+ moduł Dziennik

Systemy operacyjne I Laboratorium Część 3: Windows XP

Wonderware InTouch Machine Edition 2014 R2

Informatyka II. Laboratorium Aplikacja okienkowa

Transkrypt:

Metodyka programowania Visual Studio C# Formularze

Formularz Formularz (ang. Form) to przyszłe okno programu Nowo utworzony projekt C# typu Windows Forms ma jeden formularz; Jest to formularz główny (główne okno) aplikacji: jego zamknięcie powoduje zakończenie działania programu

Formularz Pasek tytułu (wraz z ikoną i przyciskami) i ramka należą systemu operacyjnego, a nie do aplikacji; Nie można zmienić ich wyglądu ani umieścić tam komponentów Można je dostosować (np. zmienić ikonę lub rodzaj ramki) lub całkowicie wyłączyć Pasek tytułu Ikona Menu systemowe (po kliknięciu ikony) Przyciski systemowe -minimalizuj -maksymalizuj -pomoc Ramka

Właściwości formularza FormBorderStyle (enum System.Windows.Forms.FormBorderStyle) Rodzaj ramki (kolor i grubość w ustawieniach systemu!) Możliwe ustawienia: - Sizable - standardowe - Fixed3D stały rozmiar - FixedSingle stały rozmiar, ramka bez "3D" - FixedDialog typowe dialogowe - SizableToolWindow narzędziowe - FixedToolWindow narzędziowe, stały rozmiar - None brak ramki

Właściwości formularza ControlBox (Boolean) Czy okno ma ikonę z menu systemowym i kontrolki (minimalizuj, maksymalizuj, zamknij) HelpButton (Boolean) Czy wyświetlany jest przycisk pomocy (działa pod warunkiem, że nie ma minimalizuj, maksymalizuj) Icon Ikona (.ico) wyświetlana na pasku tytułu i pasku zadań MinimizeBox (Boolean) MaximizeBox (Boolean) Czy mają być dostępne na pasku tytułu przyciski minimalizacji oraz maksymalizacji okna (jeżeli nie, to nie działa też klikanie w pasek tytułu)

Właściwości formularza ShowIcon (Boolean) Czy okno ma ikonę z menu systemowym (nie da się włączyć np. dla Dialog i ToolWindow) ShowInTaskBar (Boolean) Czy okno ma reprezentujący je przycisk na pasku zadań TopMost Zawsze na wierzchu, nawet jeżeli nie jest aktywne (podobnie jak np. Menedżer Zadań) Opacity Stopień przezroczystości okna (można wpisywać w procentach)

Właściwości formularza StartPosition (enum System.Windows.Forms.FormStartPosition) Początkowe położenie okna Możliwe ustawienia: - Manual określone przez właściwość Location - CenterScreen środek okna - WindowsDefaultLocation domyślne systemu - WindowsDefaultBounds domyślne położenie i rozmiar - CenterParent środek okna rodzica (tylko MDI) Alternatywnie można zapisywać położenie i wielkość okna w chwili zamykania aplikacji i odtwarzać te cechy przy następnym uruchomieniu

Właściwości formularza Location (Point), Top, Left (Int32) Położenie - współrzędne lewego górnego narożnika względem komponentu zawierającego Size (Point), Width, Height (Int32) Rozmiar MinimumSize (Size), MaximumSize (Size) Minimalny i maksymalny rozmiar okna; AutoSize Automatyczne dostosowanie rozmiaru do zawartości AutoScroll Automatyczne wyświetlanie pasków przewijania

Właściwości formularza Font Cechy czcionki, której używa komponent: - Name krój (np. Bookman Old Style ) - Size rozmiar w punktach - Bold, Italic pogrubienie, kursywa BackColor Kolor tła ForeColor Kolor tekstu Cechy te są "dziedziczone" przez komponenty umieszczane na formularzu (w różnym stopniu przez różne rodzaje komp.)

Właściwości formularza BackgroundImage Obrazek wyświetlany jako tło BackgroundImageLayout Sposób jego wyświetlenia - Tile - powielanie, - Stretch - rozciągnięcie, - Zoom - powiększenie

Właściwości formularza AcceptButton (IButtonControl) Przycisk "klikany" przez naciśnięcie <Enter> tzw. domyślny przycisk okna, w oknach dialogowych przycisk "Ok" CancelButton (IButtonControl) Przycisk "klikany" przez naciśnięcie <Esc> w oknach dialogowych przycisk "Anuluj"

Nowo utworzony projekt C# typu Windows Forms ma jeden formularz, ale może być ich więcej Do projektu można dodawać kolejne formularze (menu: Project / Add Windows Form) Domyślnie wyświetlane jest tylko główne okno, dodatkowe okna trzeba utworzyć i wyświetlić programowo; Do wyświetlania okna można użyć jednej z dwóch metod: Show(); ShowDialog(); Sposób zachowania okien i ich programowej obsługi jest zależny tego która z nich zostanie użyta

Okno niemodalne Okno wyświetlone metodą Show jest niemodalne (użytkownik może przełączać się między oknem głównym a dodatkowymi oknami niemodalnymi); Program nie jest wstrzymywany - kolejne (po Show) instrukcje są natychmiast wykonywane Okno jest zamykane, a nie ukrywane (np. po kliknięciu w znak "x" w rogu okna) - zwalniane są wszystkie jego zasoby, - generowane są zdarzenia FormClosing i FormClosed - próba ponownego wyświetlenia lub odwołania się do jego komponentów lub właściwości kończy się błędem - aby ponownie wyświetlić okno, trzeba je na nowo utworzyć

Okno niemodalne Sposób wyświetlenia Form2 f2 = new Form2(); f2.show(); Do komunikacji między formami trzeba napisać własne, dedykowane metody

Okno modalne Okno wyświetlone metodą ShowDialog jest modalne (ang. modal dialog winndow; użytkownik nie może przełączać się między aktywnym oknem dialogowym a innymi oknami); Program jest wstrzymywany - kolejne (po ShowDialog) instrukcje są wykonywane dopiero po zamknięciu okna dialogowego Okno jest ukrywane, a nie zamykane (np. po kliknięciu w znak "x" w rogu okna) - jego zasoby nie są zwalniane, - można je wyświetlić ponownie (stan komponentów nie zmienia się w międzyczasie) - dostępna je właściwość DialogResult - należy upewnić się, że jest tworzone tylko raz (a nie przy każdym wyświetleniu)

Okno modalne Sposób wyświetlenia Form2 f2 = new Form2(); f2.showdialog(); Do komunikacji między formami można napisać własne, dedykowane metody (np. aby sprawdzić jakie opcje zostały wybrane) Alternatywnie można odczytać stan komponentów - trzeba mieć pewność, że formularz istnieje - modyfikator dostępu komponentów (na oknie dialogowym) trzeba zmienić na internal lub public

Rezultat okna modalnego Ważnym aspektem okien dialogowych jest ich rezultat (zwykle do wyboru są min. 2 możliwości, np. Ok/Anuluj); do określenia rezultatu służy właściwość DialogResult; Nadanie wartości właściwości DialogResult formularza powoduje "zamknięcie" (tak naprawdę ukrycie) okna modalnego this.dialogresult = DialogResult.OK;

Rezultat okna modalnego Jeżeli przycisk, umieszczony na formularzu modalnym, ma przypisaną wartość DialogResult, to jego kliknięcie powoduje przypisanie tej wartości do właściwości DialogResult formularza, a tym samym jego "zamknięcie" Zwykle przyciski Ok i Anuluj są przyciskami domyślnymi formularza: - Ok (albo Zapisz, Otwórz itp.) AcceptButton okna DialogResult.OK - Anuluj CancelButton okna DialogResult.Cancel

Rezultat okna modalnego Ponieważ wykonanie funkcji wyświetlającej okno modalne zostaje wstrzymane do jego zamknięcia, to odczytanie wartości DialogResult zwykle umieszcza się w kolejnej instrukcji Niezależnie od wartości DialogResult, formularz nic sam nie robi - za to odpowiada program, np.: f2.showdialog(); if (f2.dialogresult == DialogResult.OK) // działania

Rezultat okna modalnego W przypadku okien z opcjami programu, jeżeli wybrano Anuluj, to zwykle odtwarzane są opcje sprzed wyświetlenia okna: op1 = op2 = fopt.showdialog(); if (fopt.dialogresult == DialogResult.Cancel) = op1; = op2;

Rezultat okna modalnego Bardziej eleganckie rozwiązanie polega na utrzymywaniu pól z wartościami opcji Boolean op = true; Form2 fopt = new Form2(); btnoptions_click fopt.showdialog(); if (fopt.dialogresult == DialogResult.OK) op = else = op;

Rezultat okna modalnego Można też zadbać o to, aby okno nie było tworzone bez potrzeby (aplikacja mniej obciąża system) Form2 fopt = null; btnoptions_click if (fopt == null) Form2 fopt = new Form2(); fopt.showdialog();

Dostęp do komponentów okna dialogowego Domyślnie komponenty mają modyfikator dostępu private, co oznacza że nie są dostępne z innego formularza Form2 fopt; btndoit_click if (fopt.radiobutton1.checked) // Błąd kompilacji (Error: 'radiobutton1' is inaccessible due to its protection level)

Dostęp do komponentów okna dialogowego Najprostszym rozwiązaniem jest zmiana modyfikatora dostępu na internal (dostęp możliwy z innych klas należących do tego samego zestawu) lub public Bardziej eleganckie rozwiązanie polega na zdefiniowaniu - metod (jednej do odczytu, drugiej do ustawienia) - właściwości (do odczytu i zapisu)

Definicja metod: internal Boolean getoption1() return radiobutton1.checked; internal void setoption1(boolean on) radiobutton1.checked = on; Metody są elementami klasy formularza, na równi z komponentami, mają zatem nieograniczony dostęp do wszystkich komponentów formularza i ich właściwości.

Składnia metody [Modyfikator] Typ Nazwa (Lista_argumentów) Ciało_metody Modyfikator domyślnie modyfikatorem jest private; należy użyć internal lub public Typ określa typ rezultatu; "void" jeżeli metoda nie dostarcza rezultatu Lista_argumentów lista nazw i typów rozdzielonych przecinkami (np.: Int32 i, Boolean b, String s); może być pusta Ciało_metody dowolne instrukcje; jeżeli Typ jest inny niż void, powinna kończyć się instrukcją return, zwracającą wartość zgodną z Typem

Użycie metody Metoda jest wywoływana poprzez obiekt formularza, do którego należy Form2 fopt; btndoit_click if ( fopt.getoption1() ) // btnoptions_click fopt.setoption1(opt1) )

Definicja właściwości : internal Boolean Option1 get return radiobutton1.checked; set radiobutton1.checked = value;

Składnia właściwości [Modyfikator] Typ Nazwa get Sekcja_get set Sekcja_set Modyfikator domyślnie modyfikatorem jest private; należy użyć internal lub public Typ określa typ właściwości Sekcja_get musi zwrócić wartość właściwości zgodną z Typem (przy pomocy instrukcji return) Sekcja_set otrzymuje niejawny argument o nazwie value, którego typ jest identyczny jak Typ właściwości, który powinna (choć nie musi) zapisać Jedną z sekcji można pominąć

Składnia właściwości [Modyfikator] Typ Nazwa get Sekcja_get Jedną z sekcji można pominąć jeżeli np. będzie tylko sekcja get, to uzyskamy właściwość "tylko do odczytu"

Użycie właściwości Właściwość jest używana poprzez obiekt formularza, do którego należy (podobnie, jak metoda) Form2 fopt; btndoit_click if ( fopt.option1 ) // btnoptions_click fopt.option1 = opt1;