Inżynieria Programowania Laboratorium 5 Część Wizualna. Paweł Paduch paduch@tu.kielce.pl

Wielkość: px
Rozpocząć pokaz od strony:

Download "Inżynieria Programowania Laboratorium 5 Część Wizualna. Paweł Paduch paduch@tu.kielce.pl"

Transkrypt

1 Inżynieria Programowania Laboratorium 5 Część Wizualna Paweł Paduch paduch@tu.kielce.pl

2 Rozdział 1 Wstęp Na dzisiejszych zajęciach poznamy jeden ze sposobów tworzenia okienkowej aplikacji w środowisku Visual Studio 2010 wykorzystując WPF (Windows Presentation Foundation. Oczywiście najpełniejszym źródłem wiedzy jest dokumentacja ze stron twórcy. WPF w porównaniu do klasycznego API Windows Form ma o wiele większe możliwości. Łączy w sobie kilka technologii. Poza klasycznym używaniem formatek z kontrolkami, można tworzyć grafiki 2D (tak jak w przypadku GDI+ System.Drawing.dll), obsługa grafiki 3D (wcześniej API DirectX), odtwarzanie strumieni wideo (wcześniej API Windows Media Player), oraz zarządzanie przepływem dokumentów. Wszystkie te technologie zostały zunifikowane do wspólnego API pod nazwą WPF. Celem dzisiejszych zajęć jest poznanie podstaw WPF. Dowiemy się jak stworzyć i skonfigurować proste okienko. Dodać kontrolki menu, okienka wprowadzania tekstu, guziki i tabelki. A co najważniejsze, będziemy operować na naszej bazie danych za pomocą wcześniej przygotowanej biblioteki RezerwacjeLib. 1

3 Rozdział 2 Na początek Na ostatnich zajęciach stworzyliśmy, bibliotekę dostępu do bazy danych. Posłuży nam ona za warstwę połączeniową. To z jej obiektów i metod będziemy korzystać gdy będziemy chcieli pobrać, dodać czy usunąć rekordy. Zanim jednak przejdziemy do tworzenia aplikacji wprowadzimy jeszcze kilka zmian w RezerwacjeLib. 2.1 Nazewnictwo Ostatnio problemem okazały się niezbyt trafnie dobrane nazwy np. musieliśmy tworzyć klasę Uzytkownicy, która operowała na tablicy Osoby. (klasa Osoby jest automatycznie generowane przez Entity Framework), mieliśmy Role zamiast Uprawnień itp. Poza tym w bazie nazwy tablic zwykle określały liczbę mnogą elementów w nich trzymanych (np. Osoby. Tytuly itd.) a np. Rezerwacja już nie. Kolejny problem do duże i małe litery, niektórzy stosowali małe litery w nazwach tabel to z kolei wprost przekładało się na nazwy klas wygenerowanych przez EF. Aby jednoznacznie i w sposób zunifikowany zrobić porządek z nazwami proponuję następującą nomenklaturę tabel w bazie: DniKalendarzaAkademickiego KalendarzeAkademickie Osoby Propozycje PropozycjeRezerwacje PrzedzialyCzasowe Rezerwacje RezerwacjeOsoby SchematyGodzinowe StanyRezerwacji 2

4 TypyRezerwacji TypyZasobow (nowa tabelka) Tytuly Uprawnienia Wiadomosci Zasoby Dojdzie też jedna tabelka 2.1TypyZasobow: Do tablicy Zasoby dodamy też pole IdTypuZasobu Typ tinyint varchar(50) Tabela 2.1: Typy zasobów IdTypuZasobu będące kluczem obcym i mającym zależność z tabeleką TypyZasobow. Oczywiście pamiętamy by IdTypuZasobu w TypyZasobow ustawić jako klucz główny oraz Indentity. Po tych zmianach zapisujemy wszystko i robimy aktualizację modelu Rezerwacje.edmx w RezerwacjeLib. Tabele z nowymi nazwami zostaną naniesione, niestety stare tabele zostaną powodując błędy w stylu: Error 7 Error 11007: Entity type KalendarzAkademicki is not mapped. Tabelki powodujące błędy należy usunąć oraz jeszcze raz zaktualizować model. Gdy nie ma już błędów w modelu należy przebudować bibliotekę i poprawić nazwy w plikach *.cs. Kolejne problemy z nazwami to nazwy klas wygenerowanych przez EF oraz klas napisanych przez nas w celu obsłużenia wskazanych tabel. 1 Można je rozróżnić dodając jakiś prefiks lub sufiks (np. Class). Jednak jeszcze lepszą metodą będzie skorzystanie z faktu, że klasy generowane przez EF są klasami częściowymi (ang. partial). Proszę sobie przejrzeć plik RezerwacjeDesigner.cs. W pliku tym nie możemy dodawać nowych metod. W ogóle nie powinniśmy tam nic zmieniać, bo po aktualizacji plik jako generowany automatycznie zostanie nadpisany. Możemy jednak wygenerowane klasy rozszerzyć o nową funkcjonalność w swoich plikach. Zanim to zrobimy uporządkujmy sobie nazewnictwo naszych plików podając nazwy takie jak w bazie np. Osoby.cs, Rezerwacje.cs itd. Najlepiej to zrobić zmieniając nazwę plików *.cs w solution explorerze potwierdzając propozycję zamiany nazewnictwa w reszcie projektu. Następnie zmieniając nazwy klas (już w pliku) podajemy przy okazji kwalifikator partial (bez tego słowa kluczowego będą zgłaszane błędy, że klasa o podanej nazwie istnieje). Tak jak to jest w listingu Podstawowe metody W dzisiejszym programie będziemy potrzebowali następującej funkcjonalności: 1 Istnieje jeszcze jedna metoda, mapowania nazw. Gdy w modelu wygenerowanym z bazy (plik *.edmx) wybierzemy z menu kontekstowego danej klasy Table Mapping możemy dostosować nazewnictwo wygenerowane automatycznie do nazwenictwa dla nas odpowiedniego. 3

5 pobieranie zbioru wszystkich obiektów danego typu np. Tytułów IQueryable<Tytuly> getall() dodawanie pojedynczego obiektu danego typu np. void dodaj(tytuly tytul) usuwanie podanego obiektu np. void usun(tytuly tytul) nanoszenie stanu kontekstu do bazy void zapisz() Przykładowo dla listy tytułów podstawowa klasa Tytul powinna zawierać metody jak na listingu 2.1 Nie oznacza to, że jeżeli mieliśmy już jakieś inne funkcje (np. wyszukaj tytuł po id) mamy je usuwać. 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 Listing 2.1: Klasa Tytuly.cs 6 namespace RezerwacjeLib 7 { 8 public partial class Tytuly 9 { 10 private rezerwacjeentities context = new rezerwacjeentities(); public IQueryable<Tytuly> getall() 13 { 14 return from wybrane in context.tytuly select wybrane; 15 } public void dodaj(tytuly tytul) 18 { 19 context.tytuly.addobject(tytul); 20 } public void usun(tytuly tytul) 23 { 24 context.tytuly.deleteobject(tytul); 25 } public void zapisz() 28 { 29 context.savechanges(); 30 } 31 } 32 } Powinniśmy zaimplementować powyższe metody do klas: Zasoby, Uprawnienia, Tytuly, StanyRez, TypyRez oraz TypyZasobow. Dodatkowo z poprzednich zajęć powinniśmy mieć funkcję znajdująca po loginie i haśle jak w listingu 2.2 4

6 Listing 2.2: Szukaj po loginie i haśle 1 public Osoby znajdzosobepologinieihasle(string login, string haslo) 2 { 3 var osoby = (from os in context.osoby where os.login == login && os.haslo == haslo select os).firstordefault(); 4 return osoby; 5 } Przyda nam się też funkcja zwracająca wszystkie osoby. Można napisać nową podobnie jak w listingu 2.1 lub wykorzystać np. funkcję, która szuka po nazwisku z maską i podać gwiazdkę aby wyszukała wszystkie wystąpienia. Reszta nie będzie nam dziś potrzebna choć dla pełnej obsługi można zrobić. Przypominam bibliotekę przebudowujemy za pomocą klawisza F6. 5

7 Rozdział 3 Nowy projekt Z górnego menu wybieramy: File New Project. W okienku wyboru nowego projektu zaznaczamy Visual C# Windows WPF Application. Na dole wpisujemy nazwę projektu RezerwacjeApp i potwierdzamy OK. (rys. 3.1) Rysunek 3.1: Okienko wybierania nowego projektu. Otworzy nam się pierwsze domyślne okno główne, pod spodem (jeżeli nie ma to włączyć w menu view) mamy kod XAML. Jest to plik xmlowy opisujący wygląd naszego okna. Aplikację WPF można stworzyć na 3 sposoby. W czystym XAML u wtedy odpowiedni kod jest zawarty w tagach <x:code>, w czystmy C# bez XAML, wtedy właściwości poszczególnych elementów przypisujemy z kodu oraz najpopularniejszy i sugerowany sposób tzw. Code-Behind. Część wizualna - zachowanie interfejsu użytkownika to kod XAML natomiast oprogramowanie zdarzeń w kodzie C#. 6

8 My będziemy tworzyć aplikację według tego trzeciego sposobu. Większość właściwości można wyklikać zarówno w samym oknie pokazującym przykładowy wygląd jak i w okienku Properties. Np, sposób wyrównywania, kolory, podpięte eventy. Jak ktoś chce można edytować plik XAML i obserwować efekty w oknie podglądu. Są też dodatkowe programy do edycji XAML jak chociażby Expression Blend. Zmieńmy tytuł okna na Rezerwacje (niezalogowany). Można też pobawić się kolorami, np. dać tło w postaci cieniowanej. Zanim przejdziemy dalej, pamiętajmy aby dodać referencje do naszej biblioteki (RezerwacjeLib), System.Data.Entity oraz dodać plik konfiguracji, w którym jest między innymi opis połączenia z bazą (App.config). W każdym nowym pliku *.cs dodajemy też informację o używanej przestrzeni nazw using RezerwacjeLib;. Jednym z takich plików jest automatycznie stworzony Main- Window.xaml.cs w którym zawarta jest logika działania okna MainWindow. Identycznie jak robiliśmy w przypadku aplikacji konsolowej na poprzednich zajęciach. 3.1 Menu Na początek dodajmy proste menu. Pod tagiem <Grid> umieszczamy kod jak na listingu 3.1 Listing 3.1: Menu w MainWindow.xaml 1 <Menu HorizontalAlignment="Left" Name="menuGlowne"> 2 <MenuItem Header="Zaloguj" Name="Logowanie" Click="Logowanie_Click"/> 3 <MenuItem Header="Osoby" Name="Osoby" Click="Osoby_Click"/> 4 <MenuItem Header="Słowniki" Name="Slowniki" Click="Slowniki_Click"> 5 <MenuItem Header="Zasoby" Name="Zasoby" Click="Zasoby_Click"/> 6 <MenuItem Header="Typy Zasobów" Name="TypyZasobow" Click="TypyZasobow_Click"/ > 7 <MenuItem Header="Typy Rezerwacji" Name="TypyRezerwacji" Click=" TypyRezerwacji_Click"/> 8 <MenuItem Header="Stany Rezerwacji" Name="StanyRezerwacji" Click=" StanyRezerwacji_Click"/> 9 <MenuItem Header="Tytuły" Name="Tytuly" Click="Tytuly_Click"/> 10 <MenuItem Header="Uprawnienia" Name="Uprawnienia" Click="Uprawnienia_Click"/> 11 </MenuItem> 12 </Menu> Wartość atrybutu Click to nazwa funkcji wywoływanej do obsługi kliknięcia w dany element menu. Z menu Properties wybieramy zakładkę Events i odnajdujemy zdarzenie Click. Powinna być tam już wpisana nazwa naszej metody. Tylko gdzie jest jej implementacja? Jeszcze nie ma ale do czasu. Teraz wystarczy kliknąć dwukrotnie tę nazwę. Otworzny nam się plik MainWindow.xaml.cs a kursor ustawi na nowo wygenerowanym szkielecie funkcji obsługującej zdarzenie kliknięcia. Tak należy postąpić ze wszystkimi funkcjami. Gdy wszystko jest już poprawione powinniśmy móc skompilować (F5). 7

9 Rozdział 4 Logowanie Pierwszą, czynnością w naszym programie będzie zalogowanie się do systemu. Logowanie będzie bardzo prymitywne. Poprosimy użytkownika o podanie loginu i hasła. Program za pomocą wcześniej stworzonej metody znajdzosobe- PoLoginieIHasle odszuka użytkownika w bazie. Jeżeli takiego nie znajdzie uruchomi nam się aplikacja w trybie niezalogowany. Na chwilę obecną nie będziemy rozróżniać uprawnień i poza wpisem w tytule okienka nie będzie żadnej różnicy pomiędzy użytkownikami. Jednak jesteśmy gotowi do rozpoznania według jakiego schematu uprawnień program ma działać. 4.1 Okno logowania Z menu Solution Explorer wybieramy Add Window. Nadajemy nazwę WinLogowanie. Do okienka dodajemy dwie kontrolki typu Label jednką TextBox, jedną PasswordBox oraz dwie typu Button Etykietki to napisy odpowiednio Login i Hasło. Guziki to Zaloguj i Anuluj. Pola do wprowadzania tekstu powinny mieć nazwy passwordboxhaslo oraz textboxlogin. Guziki nazywamy buttonzaloguj i buttonanuluj. Mniej więcej jak na rys Obsługa Logowania W obrębie bieżącej przestrzeni nazw (np. tworząc osobny plik Enumeracje.cs) tworzymy enumerację jak na 4.1 Tworzymy też nowy typ danych reprezentujący wiersz wyszukanych osób. (to nam się przyda nieco dalej). 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace Rezerwacje 7 { 8 public enum LoginResult 9 { 10 Canceled,LoginOk,BadLogin 11 } Listing 4.1: Stany logowania 8

10 Rysunek 4.1: Projekt okienka logowania public class WierszOsoby 14 { 15 public long IdOsoby { get; set; } 16 public string Tytul { get; set; } 17 public string Imie { get; set; } 18 public string Nazwisko { get; set; } 19 public string Login { get; set; } 20 } class Enumeracje 23 { 24 } 25 } Do pliku WinLogowanie.xaml.cs dodajemy zmienne określające jak przebiegło logowanie (listing 4.2 Listing 4.2: Zmienne w WinLogowanie.xaml.cs 1 public Osoby zalogowanaosoba = null; 2 private LoginResult lr; // rezultat logowania 3 public LoginResult loginresult //ale tylko do odczytu 4 { 5 get { return lr; } 6 } Podpinamy też obsługę zdarzeń po kliknięciu guzików Zaloguj oraz Anuluj. jak na listingach 4.3 oraz 4.4 Listing 4.3: Zaloguj WinLogowanie.xaml.cs 1 private void buttonloguj_click(object sender, RoutedEventArgs e) 2 { 3 Osoby users = new Osoby(); 4 zalogowanaosoba = users.znajdzosobepologinieihasle(this.textboxlogin.text, this. passwordboxhaslo.password); 5 if (zalogowanaosoba!= null) 6 { 7 lr = LoginResult.LoginOk; 9

11 8 } 9 else 10 { 11 lr = LoginResult.BadLogin; 12 } 13 this.close(); 14 } Listing 4.4: Anuluj WinLogowanie.xaml.cs 1 private void buttonwyjdz_click(object sender, RoutedEventArgs e) 2 { 3 zalogowanaosoba = null; 4 lr = LoginResult.Canceled; 5 this.close(); 6 } Teraz jeszcze tylko pozostaje obsłużyć logowanie w MainWindow.xaml.cs. Potrzebne będą nam 3 funkcje: Zaloguj Wyloguj oraz obsługa kliknięcia w menu. Przechodzimy do pliku MainWindow.xaml.cs W klasie MainWindow dodajmy zmienną private Osoby zalogowany = null; Dodajemy funkcję Zaloguj jak w listingu 4.5. Listing 4.5: Zaloguj w MainWindow.xaml.cs 1 private Osoby zaloguj() 2 { 3 WinLogowanie winlogin = new WinLogowanie(); 4 winlogin.showdialog(); 5 6 Osoby ret = winlogin.zalogowanaosoba; 7 switch (winlogin.loginresult) 8 { 9 case LoginResult.LoginOk: 10 if (ret!= null) 11 { 12 this.title = "Rezerwacje (zalogowany " + ret.imie + " " + ret. Nazwisko + " <" + ret.uprawnienia.nazwa + "> )"; 13 this.logowanie.header = "Wyloguj"; 14 } 15 else 16 { 17 MessageBox.Show("Dziwne Osoba == null choć login ok"); 18 throw new Exception("Osoba == null choć została znaleziona"); 19 } 20 break; 21 case LoginResult.BadLogin: 22 MessageBox.Show("Nieprawidłowe logowanie"); 23 break; 24 case LoginResult.Canceled: 25 break; 26 default: 27 throw new Exception("Nieobsłużony case"); 28 } 29 return ret; 30 } 10

12 Tworzy ona nowy obiekty typu WinLogowanie oraz wyświetla go jako dialog (czyli czeka na zamknięcie). Następnie odczytuje co zwróciło okienko, jeżeli użytkownik został znaleziony dostaniemy jego instancję oraz potwierdzenie poprawnego logowania, w przypadku niepowodzenia lub anulowania zalogowanaosoba będzie miała wartość null. Na tej podstawie możemy określić różne zachowania. Np. można ustawić tytuł głównego okna z informacją o zalogowanej osobie, oraz zmienić napis na przycisku logowania w głównym menu. Wylogowanie będzie dużo prostsze (listing 4.6). Działanie wylogowania wprowadza tylko zmiany kosmetyczne, ale w przyszłości można jeszcze zawrzeć np. zatwierdzenie wykonanych zmian lub pytanie czy na pewno wylogować. Listing 4.6: Wylogowanie w MainWindow.xaml.cs 1 private void wyloguj() 2 { 3 zalogowany = null; 4 this.logowanie.header = "Zaloguj"; 5 this.title = "Rezerwacje (niezalogowany)"; 6 } Odszukujemy wygenerowaną funkcję Logowanie Click i implementujemy kod jak na listingu 4.7 Listing 4.7: Obsługa Logowanie Click w MainWindow.xaml.cs 1 private void Logowanie_Click(object sender, RoutedEventArgs e) 2 { 3 if (zalogowany == null) //jak nie zalogowani to się logujemy 4 { 5 if ((zalogowany = zaloguj())!= null) 6 { 7 //miejsce na dodatkowe czynności wiedząc kto się zalogował 8 } 9 } 10 else //jak zalogowani to się wylogujemy 11 wyloguj(); 12 } Kolejną modyfikacją jaką można dokonać jest automatyczne utworzenie okna logowania przy załadowaniu okna głównego. W tym celu należy w oknie głównym obsłużyć zdarzenie Loaded jak na listingu 4.8. Listing 4.8: Obsługa Window Loaded w MainWindow.xaml.cs 1 private void Window_Loaded(object sender, RoutedEventArgs e) 2 { 3 zalogowany = zaloguj(); 4 } Żeby jeszcze bardziej ułatwić użytkownikowi logowanie, można ustawić kursor w okienku do wprowadzania loginu. W tym celu należy w konstruktorze WinLogowanie wywołać metodę Focus() na obiekcie textboxlogin. Jeżeli uda nam się skompilować i uruchomić naszą aplikację, powinniśmy na wstępie dostać okienko logowania. Po zalogowaniu powinniśmy mieć możliwość wylogowania oraz zalogowania ponownego. W przypadku błędu związanego z połączeniem, sprawdzić czy nie zapomnieliśmy o pliku App.config. 11

13 Rozdział 5 Edycja danych w prostych tabelach Do tej pory operacje na bazie były dość ograniczone. Jedynie jedno zapytanie o użytkownika. Nie wymagało to specjalnych konstrukcji do przeglądania danych lub ich poprawiania czy dodawania. Chcąc operować na większej liczbie danych posłużymy się tabelką. Na początku będzie to tabelka, w której umieścimy odczytane dane. Scenariusz będzie następujący: Klikam w menu Słowniki Tytuły Wywoływana jest procedura obsługi kliknięcia Tytuly Click Otwierane jest nowe okienko z tabelką Tabelka jest wypełniana danymi z bazy Zamykam okno. Zacznijmy od utworzenia nowego okna WinTytuly. Nadajmy mu tytuł Tytuły. Dodajmy nowe źródło danych. Z lewej strony z paska narzędzi należy wybrać zakładkę Data Sources. Gdy nie dodawaliśmy wcześniej żadnego źródła danych zobaczymy tylko puste miejsce z informacją aby takie źródło dodać. Klikamy w Add New Data Source... wyskoczy nam okienko kreatora dodawania nowego źródła danych. (rys. 5.1). Wybieramy Object klikamy dalej. W kolejnym kroku (Rys. 5.2) wybieramy RezerwacjeLib. Teraz wystarczy przeciągnąć nazwę interesującej nas tabelki na nowe okno. Powstanie element DataGrid wraz ze zdefiniowanymi kolumnami. Tabelkę i okno musimy nieco dopasować by jedno w drugim się mieściło. Teraz należałoby wyświetlić okienko po naciśnięciu odpowiedniego elementu z menu. W tym celu wypełniamy funkcję Tytuly Click jak na listingu 5.1. Listing 5.1: Obsługa Tytuly Click w MainWindow.xaml.cs 1 private void Tytuly_Click(object sender, RoutedEventArgs e) 2 { 12

14 Rysunek 5.1: Dodawanie nowego źródła danych. Rysunek 5.2: Dodawanie nowego źródła danych. 13

15 3 WinTytuly oknotytulow = new WinTytuly(); 4 oknotytulow.show(); 5 } Po skompilowaniu i uruchomieniu powinniśmy móc zobaczyć okno z tabelką. Niestety tabelka jeszcze jest pusta. Należy teraz wypełnić ją danymi. Na szczęście jest to kwestia dopisania trzech linijek kodu. Otwieramy plik WinTytuly.xaml.cs. Pamiętamy by dopisać using RezerwacjeLib;. Odszukujemy wygenerowaną funkcję Window Loaded i dodajemy zmienną tytuly oraz modyfikujemy ostatnią linijkę jak to jest pokazane w przykładzie 5.2. Listing 5.2: Zmiany w WinTytuly.xaml.cs 1 Tytuly tytuly = new Tytuly(); 2 private void Window_Loaded(object sender, RoutedEventArgs e) 3 { 4 System.Windows.Data.CollectionViewSource tytulyviewsource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("tytulyViewSource"))); 5 // Load data by setting the CollectionViewSource.Source property: 6 tytulyviewsource.source = tytuly.getall(); 7 } Widzimy, że po pierwsze stworzyliśmy sobie obiekt klasy Tytuly (to w nim zaimplementowaliśmy metodę zwracającą wszystkie rekordy getall()). Następnie ustalamy, że źródłem danych jest lista obiektów znalezionych przez metodę getall(). Ponownie skompilujmy i zobaczmy wygląd nowego okna z tytułami. Pozostaje nam zaimplementować obłsugę edycji danych. W okienku WinTytuly dodajemy dwa guziki Zapisz i Wyjdź. Oprogramujemy je dwoma poleceniami (tak tylko dwoma :) ). tytuly.zapisz(); Close(); 5.1 Pierwsze samodzielne zadanie Po tym dość długim tutorialu, czas na pierwsze samodzielne zadanie. Oprogramuj tak jak w przykładzie edycje dla tabel: TypyZasobow StanyRez TypyRez Uprawnienia Tabelka z zasobami jest nieco trudniejsza dlatego zajmiemy się nią w osobnym rozdziale. 14

16 Rozdział 6 Kolumna z polami ComboBox Ponieważ w tabeli Zasoby jest pole IdTypuZasobu będące kluczem obcym do tabelki TypyZasobow tę kolumnę potraktujemy specjalnie. Użyjemy kontrolki typu ComboBox z możliwością wybrania typu zasobu dla danego wiersza. Tak jak na rysunku 6.1. Rysunek 6.1: Przykładowe okno zasobów. W polu typu Combo mamy słownik, w którym określamy, które pole będzie wyświetlane (Typ) oraz za pomocą którego pola powiążemy słownik z zasobami (IdTypuZasobu). Definicja kolumny będzie wyglądać jak na listingu 6.1. Listing 6.1: Zastosowanie pola ComboBox w tabelce 1 <DataGridComboBoxColumn x:name="combo" 15

17 2 Header="Typ" 3 Width="Auto" 4 CanUserSort="True" 5 SortMemberPath="TypyZasobow.Typ" 6 DisplayMemberPath="Typ" 7 SelectedValueBinding="{Binding Path=IdTypuZasobu}" 8 SelectedValuePath="IdTypuZasobu"/> Dodatkowo aby wypełnić kontrolkę ComboBox danymi trzeba w pliku Win- Zasoby.xaml.cs dodać ładowanie typów zasobów. Czyli najpierw stworzyć obiekt typu TypyZasobow następnie za jego pomocą wypełnić combo.itemssource jak w listingu 6.2 w linii 8. Konwersja ToList jest potrzebna, aby umożliwić użytkownikowi sortowanie po wybranych kolumnach. Listing 6.2: Załaduj typy zasobów 1 Zasoby zasoby = new Zasoby(); 2 TypyZasobow typyzasobow = new TypyZasobow(); 3 private void Window_Loaded(object sender, RoutedEventArgs e) 4 { 5 System.Windows.Data.CollectionViewSource zasobyviewsource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("zasobyViewSource"))); 6 // Load data by setting the CollectionViewSource.Source property: 7 zasobyviewsource.source = zasoby.getall().tolist(); //Listę da się sortować 8 combo.itemssource = typyzasobow.getall().tolist(); 9 } 16

18 Rozdział 7 Punktacja Praca na zajęciach oceniana będzie następująco: Uporanie się z nazewnictwem 0,5 pkt. Stworzenie/uzupełnienie podstawowych metod 0,5 pkt. Stworzenie nowego projektu wraz z menu 0.5 pkt. Zaimplementowanie okna logowania 1 pkt. Zaimplementowanie edycji tytułów, (według tutoriala) 0,5 pkt. Zaimplementowanie obsługi reszty tablic słownikowych z punktu 5.1 1,5 pkt. Zaimplementować obsługę tabelki Zasoby według przykładu podanego w punkcie 6 0,5 pkt. Proszę zachować kolejność wykonywania poszczególnych zadań. Pominięcie niektórych etapów może skutkować brakiem możliwości wykonania kolejnych punktów. Ocenie będą podlegać tylko kompilujące się i działające przykłady. 17

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych Paweł Paduch paduch@tu.kielce.pl 06-04-2013 Rozdział 1 Wstęp Na dzisiejszych zajęciach zajmiemy się projektem bazy danych.

Bardziej szczegółowo

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1 1 LINQ 1 1. Cel zajęć Celem zajęć jest zapoznanie się z technologią LINQ oraz tworzeniem trójwarstwowej aplikacji internetowej. 2. Zadanie Proszę przygotować aplikację WWW, która: będzie pozwalała na generowanie

Bardziej szczegółowo

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

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,

Bardziej szczegółowo

Leszek Stasiak Zastosowanie technologii LINQ w

Leszek Stasiak Zastosowanie technologii LINQ w Leszek Stasiak Zastosowanie technologii LINQ w C# 1. Wstęp - połączenie Do naszych zadań będziemy używać Microsoft Visual Studio 2010. Stwórzmy nowy projekt Windows Form Application. Mając do dyspozycji

Bardziej szczegółowo

Informatyka II. Laboratorium Aplikacja okienkowa

Informatyka II. Laboratorium Aplikacja okienkowa Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.

Bardziej szczegółowo

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

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3 3 ASP.NET MVC Podstawy 1 1. Cel zajęć Celem zajęć jest zapoznanie się z podstawami ASP.NET MVC 2.0 Framework. 2. Zadanie Proszę zbudować prostą aplikację WWW przy zastosowaniu framework a ASP.NET MVC 2.0

Bardziej szczegółowo

xmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname="mainregion" />

xmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname=mainregion /> 1 Tworzenie Shella a. W pierwszej kolejności tworzymy nowy projekt: WPF Application. Name: Shell SolutionName: PrismApp b. Dodajemy bibliotekę PRISM za pomocą NuGet Managera (dla.net Framework 4.5 Prism

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 07 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami tworzenia aplikacji okienkowych w C#. Wprowadzenie teoretyczne. Rozważana w

Bardziej szczegółowo

Wprowadzenie do Doctrine ORM

Wprowadzenie do Doctrine ORM Wprowadzenie do Doctrine ORM Przygotowanie środowiska Do wykonania ćwiczenia konieczne będzie zainstalowanie narzędzia Composer i odpowiednie skonfigurowanie Netbeans (Tools->Options->Framework & Tools->Composer,

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 11 PHP, MySQL: więcej, więcej!, więcej!!. tabel i funkcjonalności. Na dzisiejszych zajęciach zdefiniujemy w naszej bazie kilka tabel powiązanych kluczem obcym i zobaczymy,

Bardziej szczegółowo

Instrukcja laboratoryjna cz.3

Instrukcja laboratoryjna cz.3 Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:

Bardziej szczegółowo

Laboratorium 7 Blog: dodawanie i edycja wpisów

Laboratorium 7 Blog: dodawanie i edycja wpisów Laboratorium 7 Blog: dodawanie i edycja wpisów Dodawanie nowych wpisów Tworzenie formularza Za obsługę formularzy odpowiada klasa Zend_Form. Dla każdego formularza w projekcie tworzymy klasę dziedziczącą

Bardziej szczegółowo

Baza danych sql. 1. Wprowadzenie

Baza danych sql. 1. Wprowadzenie Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z edytora graficznego struktury bazy danych, który

Bardziej szczegółowo

Modelowanie obiektowe - Ćw. 1.

Modelowanie obiektowe - Ćw. 1. 1 Modelowanie obiektowe - Ćw. 1. Treść zajęć: Zapoznanie z podstawowymi funkcjami programu Enterprise Architect (tworzenie nowego projektu, korzystanie z podstawowych narzędzi programu itp.). Enterprise

Bardziej szczegółowo

Instrukcja użytkownika systemu medycznego

Instrukcja użytkownika systemu medycznego Instrukcja użytkownika systemu medycznego ewidencja obserwacji pielęgniarskich (PI) v.2015.07.001 22-07-2015 SPIS TREŚCI: 1. Logowanie do systemu... 3 2. Zmiana hasła... 4 3. Pacjenci - wyszukiwanie zaawansowane...

Bardziej szczegółowo

Kostki OLAP i język MDX

Kostki OLAP i język MDX Kostki OLAP i język MDX 24 kwietnia 2015 r. Opis pliku z zadaniami Wszystkie zadania na zajęciach będą przekazywane w postaci plików PDF sformatowanych jak ten. Będą się na nie składały różne rodzaje zadań,

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości część 2 Zaprojektowaliśmy stronę dodaj_dzial.aspx proszę jednak spróbować dodać nowy dział nie podając jego nazwy

Bardziej szczegółowo

Baza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne

Baza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z możliwości utworzenia struktury bazy danych z

Bardziej szczegółowo

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

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem. WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy

Bardziej szczegółowo

Instrukcja laboratoryjna

Instrukcja laboratoryjna Zaawansowane techniki obiektowe 2016/17 Instrukcja laboratoryjna Testy funkcjonalne Prowadzący: Tomasz Goluch Wersja: 1.0 Testowanie aplikacji z bazą danych Większość współczesnych aplikacji korzysta z

Bardziej szczegółowo

Instalacja i obsługa aplikacji MAC Diagnoza EW

Instalacja i obsługa aplikacji MAC Diagnoza EW Instalacja i obsługa aplikacji MAC Diagnoza EW Uruchom plik setup.exe Pojawi się okno instalacji programu MAC Diagnoza EW. Wybierz przycisk AKCEPTUJĘ. Następnie zainstaluj program, wybierając przycisk

Bardziej szczegółowo

Prosta książka telefoniczna z wykorzystaniem zapisu do pliku

Prosta książka telefoniczna z wykorzystaniem zapisu do pliku Prosta książka telefoniczna z wykorzystaniem zapisu do pliku Celem zajęć będzie napisanie prostego programu okienkowego, którego zadaniem będzie zapisywanie imienia, nazwiska, adresu-email oraz numeru

Bardziej szczegółowo

Instrukcja obsługi Zaplecza epk w zakresie zarządzania tłumaczeniami opisów procedur, publikacji oraz poradników przedsiębiorcy

Instrukcja obsługi Zaplecza epk w zakresie zarządzania tłumaczeniami opisów procedur, publikacji oraz poradników przedsiębiorcy Instrukcja obsługi Zaplecza epk w zakresie zarządzania tłumaczeniami opisów procedur, publikacji oraz poradników przedsiębiorcy Spis treści: 1 WSTĘP... 3 2 DOSTĘP DO SYSTEMU... 3 3 OPIS OGÓLNY SEKCJI TŁUMACZENIA...

Bardziej szczegółowo

5.4. Tworzymy formularze

5.4. Tworzymy formularze 5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania

Bardziej szczegółowo

Projektowanie baz danych za pomocą narzędzi CASE

Projektowanie baz danych za pomocą narzędzi CASE Projektowanie baz danych za pomocą narzędzi CASE Metody tworzenia systemów informatycznych w tym, także rozbudowanych baz danych są komputerowo wspomagane przez narzędzia CASE (ang. Computer Aided Software

Bardziej szczegółowo

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

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania 1) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z podstawowymi elementami obiektowymi systemu Windows wykorzystując Visual Studio 2008 takimi jak: przyciski, pola tekstowe, okna pobierania danych

Bardziej szczegółowo

Instalacja i obsługa aplikacji MAC Diagnoza EP w celu wykonania Diagnozy rozszerzonej

Instalacja i obsługa aplikacji MAC Diagnoza EP w celu wykonania Diagnozy rozszerzonej Instalacja i obsługa aplikacji MAC Diagnoza EP w celu wykonania Diagnozy rozszerzonej Uruchom plik setup.exe Pojawi się okno instalacji programu MAC Diagnoza EP. Wybierz przycisk AKCEPTUJĘ. Następnie zainstaluj

Bardziej szczegółowo

Instrukcja obsługi Konfigurator MLAN-1000

Instrukcja obsługi Konfigurator MLAN-1000 Instrukcja obsługi Konfigurator MLAN-1000 Strona 2 z 8 SPIS TREŚCI 1. Logowanie... 3 2. Diagnostyka... 4 3. Konfiguracja sterownika... 5 3.1 Konfiguracja sterownika aktualizacja oprogramowania... 5 4.

Bardziej szczegółowo

Baza danych. Program: Access 2007

Baza danych. Program: Access 2007 Baza danych Program: Access 2007 Bazę danych składa się z czterech typów obiektów: tabela, formularz, kwerenda i raport (do czego, który służy, poszukaj w podręczniku i nie bądź za bardzo leniw) Pracę

Bardziej szczegółowo

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bardziej szczegółowo

Programowanie w środowisku graficznym GUI

Programowanie w środowisku graficznym GUI Programowanie w środowisku graficznym GUI 1. Wprowadzenie Język C# jest stworzony do szybkiego tworzenia aplikacji przy pomocy zintegrowanego środowiska programistycznego IDE (ang. Itegrated Development

Bardziej szczegółowo

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji

Access - Aplikacja. Tworzenie bazy danych w postaci aplikacji Tworzenie bazy danych w postaci aplikacji Access - Aplikacja 1. Otwórz plik zawierający bazę danych Wypożyczalni kaset video o nazwie Wypożyczalnia.mdb. 2. Utworzy kwerendę, która wyświetli tytuły i opisy

Bardziej szczegółowo

Instalacja systemu zarządzania treścią (CMS): Joomla

Instalacja systemu zarządzania treścią (CMS): Joomla Instalacja systemu zarządzania treścią (CMS): Joomla Na stronie http://www.cba.pl/ zarejestruj nowe konto klikając na przycisk:, następnie wybierz nazwę domeny (Rys. 1a) oraz wypełnij obowiązkowe pola

Bardziej szczegółowo

2.5 Dzielenie się wiedzą

2.5 Dzielenie się wiedzą 2.5 Dzielenie się wiedzą 2.5.1 Baza wiedzy zespołu Tworzenie bazy wiedzy w OneNote, zapoznanie się z przykładowymi bazami wiedzy, stworzenie struktury bazy wiedzy, zdefiniowanie własnych tagów, stworzenie

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI PROGRAMU PRZEDSZKOLE (CZ.1)

INSTRUKCJA OBSŁUGI PROGRAMU PRZEDSZKOLE (CZ.1) INSTRUKCJA OBSŁUGI PROGRAMU PRZEDSZKOLE (CZ.1) Uruchomienie programu Po uruchomieniu programu wyświetlane jest okno logowania, w którym wprowadza się nazwę użytkownika (opis w dalszej części instrukcji)

Bardziej szczegółowo

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

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla

Bardziej szczegółowo

WYPOŻYCZALNIA BY CTI INSTRUKCJA

WYPOŻYCZALNIA BY CTI INSTRUKCJA WYPOŻYCZALNIA BY CTI INSTRUKCJA 1 Spis treści 1. Opis programu...3 2. Pierwsze uruchomienie...4 3. Konfiguracja...5 3.1. Licencja...5 3.2. Ogólne...5 3.2.1. Połączenia z bazami danych...5 3.2.2. Zarządzanie

Bardziej szczegółowo

Laboratorium 1 - Programowanie proceduralne i obiektowe

Laboratorium 1 - Programowanie proceduralne i obiektowe Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?

Bardziej szczegółowo

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

Programowanie obiektowe i zdarzeniowe wykład 1 Wprowadzenie do programowania zdarzeniowego Programowanie obiektowe i zdarzeniowe wykład 1 Wprowadzenie do programowania zdarzeniowego 1/34 Wymagania wstępne: Znajomość podstaw programowania. Efekty kształcenia: Umiejętność tworzenia prostych aplikacji

Bardziej szczegółowo

Instrukcja laboratoryjna nr.4

Instrukcja laboratoryjna nr.4 Języki programowania na platformie.net cz.2 2016/17 Instrukcja laboratoryjna nr.4 Język Visual Basic for.net Prowadzący: Tomasz Goluch Wersja: 3.1 I. Współpraca Visual Basic z C# Cel: Wykorzystanie w kodzie

Bardziej szczegółowo

Uruchamianie bazy PostgreSQL

Uruchamianie bazy PostgreSQL Uruchamianie bazy PostgreSQL PostgreSQL i PostGIS Ten przewodnik może zostać pobrany jako PostgreSQL_pl.odt lub PostgreSQL_pl.pdf Przejrzano 10.09.2016 W tym rozdziale zobaczymy, jak uruchomić PostgreSQL

Bardziej szczegółowo

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie Wstęp FTP - (ang. File Transfer Protocol - protokół transmisji danych) jest to protokół typu klient-serwer, który umożliwia przesyłanie plików na serwer, oraz z serwera poprzez program klienta FTP. Dzięki

Bardziej szczegółowo

Maple i wykresy. 1.1 Najpierw należy się zalogować. Jak to zrobić zostało opisane w moim poprzednim tutorialu.

Maple i wykresy. 1.1 Najpierw należy się zalogować. Jak to zrobić zostało opisane w moim poprzednim tutorialu. Maple i wykresy 1 Program Maple 1.1 Najpierw należy się zalogować. Jak to zrobić zostało opisane w moim poprzednim tutorialu. 1.2 Uruchomienie programu Maple Uruchamiamy go, wpisując w konsoli maple, potwierdzając

Bardziej szczegółowo

Palety by CTI. Instrukcja

Palety by CTI. Instrukcja Palety by CTI Instrukcja Spis treści 1. Logowanie... 3 2. Okno główne programu... 4 3. Konfiguracja... 5 4. Zmiana Lokalizacji... 6 5. Nowa Paleta z dokumentu MMP... 8 6. Realizacja Zlecenia ZW... 10 7.

Bardziej szczegółowo

Instrukcja obsługi. Helpdesk. Styczeń 2018

Instrukcja obsługi. Helpdesk. Styczeń 2018 Instrukcja obsługi Helpdesk Styczeń 2018 1 Spis treści: Ogólna obsługa Helpdesk...3 1. Logowanie do systemu....3 2. Menu główne...3 2.1 Strona domowa...4 2.2 Zmiana hasła...6 3. Otwarcie zgłoszenia...6

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy dwie Encje (tabele) prawym

Bardziej szczegółowo

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller Dokumentacja systemu NTP rekrut Autor: Sławomir Miller 1 Spis treści: 1. Wstęp 1.1 Wprowadzenie 1.2 Zakres dokumentu 2. Instalacja 2.1 Wymagania systemowe 2.2 Początek 2.3 Prawa dostępu 2.4 Etapy instalacji

Bardziej szczegółowo

Dodanie nowej formy do projektu polega na:

Dodanie nowej formy do projektu polega na: 7 Tworzenie formy Forma jest podstawowym elementem dla tworzenia interfejsu użytkownika aplikacji systemu Windows. Umożliwia uruchomienie aplikacji, oraz komunikację z użytkownikiem aplikacji. W trakcie

Bardziej szczegółowo

MATERIAŁY - udostępnianie materiałów dydaktycznych w sieci SGH

MATERIAŁY - udostępnianie materiałów dydaktycznych w sieci SGH MATERIAŁY - udostępnianie materiałów dydaktycznych w sieci SGH SPIS TREŚCI i EKRANÓW WSTĘP Ekran1: Wstęp. Logowanie Ekran2: Strona początkowa UDOSTEPNIONE MATERIAŁY Ekran3: Dostępne materiały Ekran4: Zawartość

Bardziej szczegółowo

WPROWADZANIE ZLECEŃ POPRZEZ STRONĘ WWW.KACZMARSKI.PL INSTRUKCJA UŻYTKOWNIKA

WPROWADZANIE ZLECEŃ POPRZEZ STRONĘ WWW.KACZMARSKI.PL INSTRUKCJA UŻYTKOWNIKA WPROWADZANIE ZLECEŃ POPRZEZ STRONĘ WWW.KACZMARSKI.PL INSTRUKCJA UŻYTKOWNIKA WSTĘP... 2 1 UWARUNKOWANIA TECHNICZNE... 2 2 UWARUNKOWANIA FORMALNE... 2 3 LOGOWANIE DO SERWISU... 2 4 WIDOK STRONY GŁÓWNEJ...

Bardziej szczegółowo

Platforma e-learningowa

Platforma e-learningowa Dotyczy projektu nr WND-RPPD.04.01.00-20-002/11 pn. Wdrażanie elektronicznych usług dla ludności województwa podlaskiego część II, administracja samorządowa realizowanego w ramach Decyzji nr UDA- RPPD.04.01.00-20-002/11-00

Bardziej szczegółowo

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

Przykładowa dostępna aplikacja w Visual Studio - krok po kroku 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

Bardziej szczegółowo

Instrukcja laboratoryjna cz.6

Instrukcja laboratoryjna cz.6 Programowanie aplikacji internetowych 2013/2014 Instrukcja laboratoryjna cz.6 Technologia Silverlight cz.2 Prowadzący: Tomasz Goluch Wersja: 3.0 I. Model danych (tworzenie bazy na podstawie modelu). Cel:

Bardziej szczegółowo

System obsługi wag suwnicowych

System obsługi wag suwnicowych System obsługi wag suwnicowych Wersja 2.0-2008- Schenck Process Polska Sp. z o.o. 01-378 Warszawa, ul. Połczyńska 10 Tel. (022) 6654011, fax: (022) 6654027 schenck@schenckprocess.pl http://www.schenckprocess.pl

Bardziej szczegółowo

Najważniejsze informacje dla klienta na temat Portalu Serwisowego D-Link Spis treści

Najważniejsze informacje dla klienta na temat Portalu Serwisowego D-Link Spis treści Najważniejsze informacje dla klienta na temat Portalu Serwisowego D-Link Spis treści Rozdział 1: Rejestracja i logowanie do Portalu Serwisowego... 2 Rozdział 2: Informacje ogólne... 4 Rozdział 3: Rejestracja

Bardziej szczegółowo

Programowanie zaawansowane

Programowanie zaawansowane Programowanie zaawansowane Ćwiczenie 6 Komunikacja silnie typowana I. Utwórz aplikację okienkową realizującą proste obliczenia arytmetyczne. Obsługa zdarzeń w aplikacji typu Windows Form Application odbywa

Bardziej szczegółowo

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

Windows Workflow Foundation (wprowadzenie - prosty przykład Sequential Workflow): Windows Workflow Foundation (wprowadzenie - prosty przykład Sequential Workflow): 1. Utworzenie projektu - Sequential Workflow. File - New Project - Visual C# -Workflow- Sequential Workflow Console Application

Bardziej szczegółowo

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

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2012. W ramach projektu budowana jest prosta

Bardziej szczegółowo

5.2. Pierwsze kroki z bazami danych

5.2. Pierwsze kroki z bazami danych 5.2. Pierwsze kroki z bazami danych Uruchamianie programu Podobnie jak inne programy, OO Base uruchamiamy z Menu Start, poprzez zakładkę Wszystkie programy, gdzie znajduje się folder OpenOffice.org 2.2,

Bardziej szczegółowo

PWI Instrukcja użytkownika

PWI Instrukcja użytkownika PWI Instrukcja użytkownika Spis treści 1. Wprowadzenie... 1 2. Przebieg przykładowego procesu... 1 3. Obsługa systemu... 5 a. Panel logowania... 5 b. Filtrowanie danych... 5 c. Pola obligatoryjne... 6

Bardziej szczegółowo

Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych: Rejestracja- MDK Przeglądanie oferty i rejestracja kandydata Informacje ogólne Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych: Internet Explorer

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ

INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ INSTRUKCJA OBSŁUGI BIULETYNU INFORMACJI PUBLICZNEJ W celu wprowadzenia, modyfikacji lub usunięcia informacji w Biuletynie Informacji Publicznej należy wpisać w przeglądarce adres strony: http:/bip.moriw.pl/admin.php

Bardziej szczegółowo

SUPLEMENT DO DYPLOMU

SUPLEMENT DO DYPLOMU Projekt Jednolity System Obsługi Studentów Podręcznik użytkownika aplikacji SUPLEMENT DO DYPLOMU POLITECHNIKA WROCŁAWSKA wersja 1.02 ComputerLand Wrocław, czerwiec 2005 ComputerLand Podręcznik użytkownika

Bardziej szczegółowo

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer? Kadry Optivum, Płace Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Kadry Optivum lub Płace Optivum (lub z obydwoma programami pracującymi na wspólnej bazie danych) na nowym

Bardziej szczegółowo

Compas 2026 Personel Instrukcja obsługi do wersji 1.05

Compas 2026 Personel Instrukcja obsługi do wersji 1.05 Compas 2026 Personel Instrukcja obsługi do wersji 1.05 1 Oprogramowanie obsługi uprawnień SKD 2 Oprogramowanie obsługi uprawnień SKD 3 Oprogramowanie obsługi uprawnień SKD Spis treści Integracja...5 1.Compas

Bardziej szczegółowo

PTI S1 Tabele. Tabele. Tabele

PTI S1 Tabele. Tabele. Tabele Tabele Tabele 43 1.3. Tabele Jako że bazy danych składają się z tabel, musimy nauczyć się jak je zaprojektować, a następnie stworzyć i zarządzać nimi w programie Microsoft Access 2013. Zajmiemy się również

Bardziej szczegółowo

Przygotowanie formularza do wypożyczenia filmu:

Przygotowanie formularza do wypożyczenia filmu: Przygotowanie formularza do wypożyczenia filmu: Stworzony przez nas formularz powinien spełniać pewne wymagania, które umożliwią pracownikowi szybkie przeszukiwanie bazy danych. Zaprojektowany formularz

Bardziej szczegółowo

DOKUMENTY I GRAFIKI. Zarządzanie zawartością Tworzenie folderu Dodawanie dokumentu / grafiki Wersje plików... 7

DOKUMENTY I GRAFIKI. Zarządzanie zawartością Tworzenie folderu Dodawanie dokumentu / grafiki Wersje plików... 7 DOKUMENTY I GRAFIKI SPIS TREŚCI Zarządzanie zawartością... 2 Tworzenie folderu... 3 Dodawanie dokumentu / grafiki... 4 Wersje plików... 7 Zmiana uprawnień w plikach... 9 Link do dokumentów i dodawanie

Bardziej szczegółowo

LINQ TO SQL w dużym skrócie jest to zintegrowany język zapytao pozwalający na mapowanie relacyjnych baz danych na model obiektowy.

LINQ TO SQL w dużym skrócie jest to zintegrowany język zapytao pozwalający na mapowanie relacyjnych baz danych na model obiektowy. LINQ TO SQL w dużym skrócie jest to zintegrowany język zapytao pozwalający na mapowanie relacyjnych baz danych na model obiektowy. Zanim ktokolwiek postanowi użyd tego w swoim projekcie, należy zaznaczyd

Bardziej szczegółowo

Nowa Netia administrator firmy Nagrywanie połączeń-zarządzanie

Nowa Netia administrator firmy Nagrywanie połączeń-zarządzanie RBT API v2.3 Nowa Netia administrator firmy Nagrywanie połączeń-zarządzanie Spis treści I. WPROWADZENIE 2 II. OPIS FUNKCJONALNOŚCI..3 1. LOGOWANIE I ZMIANA HASŁA...3 1.1 LOGOWANIE..3 1.2 WIDOK PO ZALOGOWANIU...4

Bardziej szczegółowo

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

Microsoft.NET: LINQ to SQL, ASP.NET AJAX Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub

Bardziej szczegółowo

Microsoft Access zajęcia 3 4. Tworzenie i wykorzystanie kwerend, formularzy i raportów

Microsoft Access zajęcia 3 4. Tworzenie i wykorzystanie kwerend, formularzy i raportów Microsoft Access zajęcia 3 4 Tworzenie i wykorzystanie kwerend, formularzy i raportów Kwerendy służą do tworzenia unikalnych zestawów danych, niedostępnych bezpośrednio z tabel, dokonywania obliczeń zawartych

Bardziej szczegółowo

Nabór Bursy/CKU. Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

Nabór Bursy/CKU. Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych: Nabór Bursy/CKU Przeglądanie oferty i rejestracja kandydata Informacje ogólne Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych: Internet Explorer

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest

Bardziej szczegółowo

Instrukcja obsługi programu VisitBook Semieta Lite

Instrukcja obsługi programu VisitBook Semieta Lite Instrukcja obsługi programu VisitBook Semieta Lite Wersja Polska Maj 2015 Rozdzielanie i kopiowanie bez pisemnej zgody firmy ACSS ID Systems Sp. z o.o. zabronione Polska wersja językowa Copyright ACSS

Bardziej szczegółowo

Załącznik nr 8. do Studium Wykonalności projektu Sieć Szerokopasmowa Polski Wschodniej województwo podkarpackie

Załącznik nr 8. do Studium Wykonalności projektu Sieć Szerokopasmowa Polski Wschodniej województwo podkarpackie MINISTERSTWO ROZWOJU REGIONALNEGO Załącznik nr 8 do Studium Wykonalności projektu Sieć Szerokopasmowa Polski Wschodniej Instrukcja obliczania wskaźnika pokrycia. Strona 2 z 24 Studium Wykonalności projektu

Bardziej szczegółowo

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika Prowadzący: Dr inż. Jacek Habel Instytut Technologii Maszyn i Automatyzacji Produkcji Zakład Projektowania Procesów

Bardziej szczegółowo

System Obsługi Zleceń

System Obsługi Zleceń System Obsługi Zleceń Podręcznik Administratora Atinea Sp. z o.o., ul. Chmielna 5/7, 00-021 Warszawa NIP 521-35-01-160, REGON 141568323, KRS 0000315398 Kapitał zakładowy: 51.000,00zł www.atinea.pl wersja

Bardziej szczegółowo

SYSTEM ZARZĄDZANIA RELACJAMI Z KLIENTEM CRM7

SYSTEM ZARZĄDZANIA RELACJAMI Z KLIENTEM CRM7 SYSTEM ZARZĄDZANIA RELACJAMI Z KLIENTEM CRM7 Administracja instrukcja Panel administracyjny jest dostępny z menu po lewej stronie ekranu. Użytkownicy bez uprawnień administracyjnych mają tylko możliwość

Bardziej szczegółowo

Compas 2026 Vision Instrukcja obsługi do wersji 1.07

Compas 2026 Vision Instrukcja obsługi do wersji 1.07 Compas 2026 Vision Instrukcja obsługi do wersji 1.07 1 2 Spis treści Integracja...5 1.Compas 2026 Lan...5 Logowanie...7 Użytkownicy...8 Raporty...10 Tworzenie wizualizacji Widoki...12 1.Zarządzanie widokami...12

Bardziej szczegółowo

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

Rys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom: 1. QT creator, pierwsze kroki. Qt Creator wieloplatformowe środowisko programistyczne dla języków C++, JavaScript oraz QML, będące częścią SDK dla biblioteki Qt. Zawiera w sobie graficzny interfejs dla

Bardziej szczegółowo

Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych

Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych Jacek Matulewski Materiały dla Podyplomowego Studium Programowania i Zastosowania Komputerów, sekcja Projektowanie i tworzenie aplikacji

Bardziej szczegółowo

Zawartość 1. Wprowadzenie... 2 2. Logowanie... 3 3. Strona główna... 4 4. Edycja danych użytkownika... 6 5. Zmiana hasła... 7 6. Tworzenie nowego sylabusu przedmiotu... 10 6.1. Tworzenie nowego sylabusu

Bardziej szczegółowo

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

2. Kliknij Insert->Userform. Jeżeli Toolbox nie pojawi się automatycznie, kliknij View -> Toolbox. Otrzymany widok powinien być jak poniżej. Formularze VBA Przykład1 INTERAKTYWNY FORMULARZ Program tworzący interaktywny formularz. Objaśnienie: w dowolnym momencie można wprowadzić wartość w polu tekstowym ID, Excel VBA wczytuje odpowiedni rekord.

Bardziej szczegółowo

Wprowadzenie do projektu QualitySpy

Wprowadzenie do projektu QualitySpy Wprowadzenie do projektu QualitySpy Na podstawie instrukcji implementacji prostej funkcjonalności. 1. Wstęp Celem tego poradnika jest wprowadzić programistę do projektu QualitySpy. Będziemy implementować

Bardziej szczegółowo

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

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44 Zaawansowane aplikacje internetowe EJB 1 Rozróżniamy dwa rodzaje beanów sesyjnych: Stateless Statefull Celem tego laboratorium jest zbadanie różnic funkcjonalnych tych dwóch rodzajów beanów. Poszczególne

Bardziej szczegółowo

Podręcznik aplikacji PANTEON dla IS PAN. Spis treści. Wersja 1.0

Podręcznik aplikacji PANTEON dla IS PAN. Spis treści. Wersja 1.0 Podręcznik aplikacji PANTEON dla IS PAN Wersja 1.0 Spis treści Podręcznik aplikacji PANTEON dla IS PAN...1 Wstęp...2 Dostęp do aplikacji...2 Logowanie...3 Dostęp do formularzy...5 Wypełnianie formularza...6

Bardziej szczegółowo

Edycja szablonu artykułu do czasopisma

Edycja szablonu artykułu do czasopisma Wydawnictwo Uniwersytetu Ekonomicznego we Wrocławiu Edycja szablonu artykułu do czasopisma 2014 Wrocław Spis treści 1. Wstęp... 2 2. Zmiana tytułu publikacji... 3 2.1. Właściwości zaawansowane dokumentu...

Bardziej szczegółowo

Bazy danych Karta pracy 1

Bazy danych Karta pracy 1 Bazy danych Karta pracy 1 Bazy danych Karta pracy 1 1. Utwórz katalog Bazy danych służący do przechowywania wszelkich danych dotyczących kursu. 2. W katalogu Bazy danych stwórz podkatalog BD1 służący jako

Bardziej szczegółowo

Zbieranie kontaktów.

Zbieranie kontaktów. Zbieranie kontaktów. Autor: Roman Przydatek Silvanet Hanna Kumpicka Polskie prawo zabrania wysyłania ofert handlowych na adresy e-mail, których właściciele nie wyrazili na to jednoznacznie zgody. W celu

Bardziej szczegółowo

Instrukcja użytkownika systemu medycznego. Pracownik medyczny Lekarz ZDLR

Instrukcja użytkownika systemu medycznego. Pracownik medyczny Lekarz ZDLR Instrukcja użytkownika systemu medycznego Pracownik medyczny Lekarz ZDLR 10-05-2017 Spis treści 1. Logowanie do systemu... 3 2. Przyciski w systemie... 5 3. Opis wizyty... 6 3.1. Opis obserwacji na formularzach...

Bardziej szczegółowo

Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się.

Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się. Za operacje na bazie odpowiada biblioteka mysqli (i jak improved). Posiada ona interfejs obiektowy jak i proceduralny. Podłączenie do bazy (obiektowo) mysqli:: construct() ([ string $host [, string $username

Bardziej szczegółowo

Instrukcja użytkownika systemu medycznego

Instrukcja użytkownika systemu medycznego Instrukcja użytkownika systemu medycznego ewidencja obserwacji psychologicznych (PS) i rehabilitacyjnych (RE) v.2016.07.001 25-08-2016 SPIS TREŚCI: 1. Logowanie do systemu... 3 2. Zmiana hasła... 4 3.

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,

Bardziej szczegółowo

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości część 3 przejdziemy teraz do zaprojektowania strony przegladaj_dzialami.aspx na której użytkownicy będą przeglądać

Bardziej szczegółowo

Stosowanie, tworzenie i modyfikowanie stylów.

Stosowanie, tworzenie i modyfikowanie stylów. Stosowanie, tworzenie i modyfikowanie stylów. We wstążce Narzędzia główne umieszczone są style, dzięki którym w prosty sposób możemy zmieniać tekst i hurtowo modyfikować. Klikając kwadrat ze strzałką w

Bardziej szczegółowo

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

Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej: Interfejs w MFC 1. Tworzenie nowego projektu Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej: Następnie wybieramy opcje jak na rysunku: Następnie wybieramy

Bardziej szczegółowo

6. Formularze tabelaryczne, obiekty nawigacji - rozgałęzienia

6. Formularze tabelaryczne, obiekty nawigacji - rozgałęzienia 6. Formularze tabelaryczne, obiekty nawigacji - rozgałęzienia 1. Kolejne zadanie będzie polegało na utworzeniu formularza tabelarycznego prezentującego utwory określonego wykonawcy. Formularz utworzymy

Bardziej szczegółowo

plansoft.org www.plansoft.org Zmiany w Plansoft.org Błyskawiczny eksport danych PLANOWANIE ZAJĘĆ, REZERWOWANIE SAL I ZASOBÓW

plansoft.org www.plansoft.org Zmiany w Plansoft.org Błyskawiczny eksport danych PLANOWANIE ZAJĘĆ, REZERWOWANIE SAL I ZASOBÓW Zmiany w Plansoft.org Błyskawiczny eksport danych... 1 Jak wyeksportować dane... 1 Eksportowanie planu studiów, zajęć, statystyk i danych słownikowych... 2 Dostosowywanie wyników eksportu... 4 Filtrowanie

Bardziej szczegółowo