4. Proste przekazywanie stanu

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

Download "4. Proste przekazywanie stanu"

Transkrypt

1 4. Proste przekazywanie stanu 4.1. Cel przedsięwzięcia i zasada działania W celu sprawdzenia tradycyjnego sposobu przekazywania parametrów między stronami wykonamy teraz nieskomplikowane ćwiczenie Kwadraty liczb. Będzie ono prezentować następujące zagadnienia: walidację strony z poziomu kodu, wykorzystanie właściwości strony IsPostBack oraz IsValid, przekierowanie (ang. redirect) przeglądarki między stronami oraz programową obsługę kontrolki Table dodawanie wierszy i komórek z dynamicznie generowaną zawartością. Rysunek 1. Planowany wygląd aplikacji Zasada działania jest następująca: na pierwszej stronie umieścimy formularz HTML zawierający pole do wpisania liczby, liczba ta będzie przekazywana na drugą stronę, przez wysłanie parametrów odczytanych z formularza, na drugiej stronie liczba podana w postaci parametru będzie używana przy dynamicznym tworzeniu tablicy kwadratów liczb, od 1 do żądanej liczby, następnie tablica ta będzie wykorzystywana do zbudowania zawartości tabeli na stronie, kliknięcie w łącze Wstecz lub podanie błędnych danych będzie przekierowywać przeglądarkę z powrotem na stronę pierwszą. 1

2 4.2. Budowa interfejsu użytkownika W celu stworzenia żądanej strony, wykonaj poniższe polecenia: 1. Załóż na dysku twardym własny katalog na pliki dla tego zadania. 2. Otwórz program WebMatrix. 3. Stwórz nową stronę ASP.NET Page, upewnij się czy w polu Language jest wybrana opcja C#, a następnie zapisz stronę w swoim katalogu, w pliku o nazwie Kwadraty.aspx. 4. Wstaw do tej strony nagłówek: Kwadraty. 5. Warto będzie wstawić do strony dwie tabele. Pierwsza będzie jedynie dodawać ramkę wokół drugiej, właściwej tabeli z kontrolkami. Bez tego włączenie ramek dla jednej tylko tabeli spowoduje, że każda komórka będzie otoczona ramką, co nie jest zbyt eleganckie i ujawnia zastosowanie kontrolek walidujących. Wstaw więc tabelę, poleceniem HTML Insert Table. 6. Podaj następujące dane: Rows: 1 (liczba wierszy), Width: (szerokość wyczyść), Columns: 1 (liczba kolumn), Height: (wysokość wyczyść). 7. Kliknij we wstawioną tabelę (w jedną z jej ramek), aby zaznaczył się znacznik <TABLE>. W celu wskazania znacznika <TABLE> możesz również kliknąć wewnątrz dowolnej komórki tabeli i skorzystać z listy znaczników w oknie właściwości, zatytułowanej Click to see parent HTML elements. 8. Ustaw jej właściwości: border na 1, bordercolor na Black, oraz bgcolor (poprzez zakładkę z kolorami Web) na NavajoWhite. 9. Umieść kursor wewnątrz tabeli (wymaga to chwili uwagi). Wstaw teraz do środka drugą tabelę, ponownie poleceniem HTML Insert Table. 10. Podaj następujące dane: Rows: 3 (liczba wierszy), Width: 300 (szerokość), Columns:1 (liczba kolumn), Height: 120 (wysokość). Trzy wiersze będą potrzebne na: informację, główne kontrolki oraz kontrolki walidujące. 11. Wpisz w pierwszym wierszu tekst, zgodnie z rysunkiem W drugim wierszu wstaw kontrolkę TextBox i nazwij ją (ustawiając właściwość (ID)) TxtIleLiczb. 13. W okienku Toolbox otwórz zakładkę HTML Elements i wstaw za polem tekstowym kontrolkę Submit Button. Kluczowym elementem jest tutaj zastosowanie takiej właśnie kontrolki oraz ustawienie jej właściwości runatserver, żeby można było formularz wysłać, naciskając klawisz Enter. Nie jest to niestety możliwe, jeśli 2

3 użyjemy przycisku Button i jego zdarzenia Click nadal trzeba wskazać przycisk i nacisnąć go. 14. W okienku Toolbox wróć na zakładkę Web Controls i wstaw w trzecim wierszu tabeli kontrolki sprawdzania poprawności: RequiredFieldValidator i RangeValidator. Zabezpieczy to przed sytuacją braku lub nieprawidłowych danych. 15. Ustaw właściwości kontrolek zgodnie z poniższą tabelą: Kontrolka Nazwa kontrolki (ID) Nazwa właściwości Wartość właściwości TextBox TxtIleLiczb Width 235 MaxLength 5 <INPUT type="submit"> value " OK " runatserver True RequiredFieldValidator ReqLiczba ControlToValidate TxtIleLiczb Display Dynamic ErrorMessage Wpisz wartość! RangeValidator RngLiczba ControlToValidate TxtIleLiczb Display Dynamic ErrorMessage Wpisz liczbę z zakresu ! Type Integer MinimumValue 1 MaximumValue Zapisz dokonane zmiany i sprawdź, czy strona poprawnie działa. Powinny wyświetlać się komunikaty o prawidłowych (bądź nieprawidłowych) liczbach Przekazywanie parametrów między stronami Pora teraz na przekazanie odczytanej liczby do drugiej strony, która coś ciekawego z nią zrobi (wyświetli tablicę kwadratów). W tym celu: 17. Odszukaj okienko Properties (prawy dolny panel w WebMatrix). W liście rozwijanej kontrolek wskaż element Page. 18. Przełącz się na zakładkę ze zdarzeniami i kliknij dwukrotnie w zdarzenie Load. Wpisz poniższy kod: Przykład 14. Przekazanie danych na drugą stronę przez przekierowanie (ang. redirect) void Page_Load(object sender, EventArgs e) { if (IsPostBack) { 3

4 Validate(); if (IsValid) { Response.Redirect("Kwadraty1.aspx?ile=" + TxtIleLiczb.Text); Powyższy kod działa według następującego algorytmu: użytkownik wpisuje liczbę i zatwierdza ją. Po sprawdzeniu, czy użytkownik wysyłał stronę na serwer (warunek IsPostBack) wywoływane jest żądanie sprawdzenia poprawności wprowadzonych danych (instrukcja Validate()). Dzięki temu możliwe jest sprawdzenie poprawności danych (warunek IsValid). Jeśli dane są w porządku, budowany jest adres strony docelowej, z uwzględnieniem parametrów jak dla metody GET przez znak zapytania (ang. query string). Następnie dane są przekazywane dzięki przekierowaniu przeglądarki użytkownika do wskazanej strony (wywołanie Response.Redirect()). Druga strona będzie mogła odczytać przekazane parametry dzięki wykorzystaniu predefiniowanego obiektu ASP.NET Request Budowa strony odbierającej parametry Zanim będzie można wyświetlać kwadraty liczb, trzeba najpierw przygotować na wszystko miejsce. Potrzebny jest więc interfejs użytkownika drugiej strony, jak pokazano poniżej. Rysunek 2. Planowany wygląd aplikacji W celu stworzenia żądanej strony, wykonaj poniższe czynności: 4

5 19. Stwórz nową stronę ASP.NET Page, upewnij się, czy w polu Language została wybrana opcja C#, a następnie zapisz stronę w swoim katalogu, w pliku o nazwie Kwadraty1.aspx. 20. Wstaw do tej strony nagłówek: Kwadraty obliczenia. 21. Tym razem wystarczy wstawić do strony jedną tabelę, ponieważ będzie miała ona tylko jeden wiersz. Wstaw więc tabelę, poleceniem HTML Insert Table. 22. Podaj następujące dane: Rows: 1 (liczba wierszy), Width: 230 (szerokość), Columns: 1 (liczba kolumn), Height: 40 (wysokość). 23. Kliknij we wstawioną tabelę (w jedną z jej ramek), aby zaznaczył się znacznik <TABLE>. W celu wskazania znacznika <TABLE> możesz również kliknąć wewnątrz dowolnej komórki tabeli i skorzystać z listy znaczników w oknie właściwości, zatytułowanej Click to see parent HTML elements. 24. Ustaw jej właściwości: border na 1, bordercolor na Black oraz bgcolor (poprzez zakładkę z kolorami Web) na NavajoWhite. 25. Wpisz w pierwszym wierszu tekst, zgodnie z rysunkiem Wstaw kontrolkę Label i nazwij ją LabLiczba. 27. Poniżej wstaw kontrolkę Table. Tym razem ma to być kontrolka z zakładki Web Controls, a nie tabela HTML. Nazwij ją TblWyniki. Będzie ona dynamicznie wypełniana wierszami z kwadratami liczb. 28. Wstaw poniżej kontrolkę HyperLink i nazwij ją LnkWstecz. Dzięki niej będzie można powrócić do pierwszej strony ćwiczenia. 29. Ustaw właściwości kontrolek zgodnie z poniższą tabelą: Kontrolka Nazwa kontrolki (ID) Nazwa właściwości Wartość właściwości Label LabLiczba Text Table TblWyniki HyperLink LnkWstecz Text Wstecz NavigateUrl Kwadraty.aspx 4.5. Odczyt i użycie przekazanych parametrów Jedyna rzecz, jaka pozostała, to napisanie kodu realizującego założoną funkcjonalność. Przyznać trzeba, że pierwsza strona jest raczej prosta jej celem jest jedynie 5

6 odczytanie liczby i wysłanie jej do drugiej strony. Druga strona natomiast ma wykonać całą pracę: utworzenie i wyświetlenie tablicy kwadratów. Zrobimy to w dwóch etapach. Najpierw trzeba będzie przygotować tablicę zawierającą kwadraty liczb. Następnie stworzona zostanie uniwersalna metoda wyświetlająca zawartość tablicy, która będzie do podanej tabeli dodawać wiersze i komórki z odpowiednią zawartością (liczby oraz ich kwadraty z tablicy). Odczyt parametrów zostanie umieszczony w obsłudze zdarzenia Page_Load: Przykład 15. Odczyt parametrów przekazanych z pierwszej strony void Page_Load(object sender, EventArgs e) { string liczba = Request["ile"]; try { int zabezpieczenie = liczba.length + Convert.ToInt32(liczba); catch (Exception ex) { Response.Redirect("Kwadraty.aspx"); LabLiczba.Text = liczba; int ile = Convert.ToInt32(liczba); // Tablica "wyniki" jest typu long, bo * = // a > nie mieści się w zakresie int long[] wyniki = new long[ile]; for (int x = 1; x <= ile; x++) { // przynajmniej jedna z liczb musi być typu long, żeby // uniknąć błędów w obliczeniach wyniki[x - 1] = (long) x * x; Wyswietl(wyniki, TblWyniki); Jak widać, odczyt parametrów jest dość prosty. Wystarczy w tym celu pobrać z obiektu Request żądany parametr ile. Następnie zastosowane jest zabezpieczenie (w bloku try/catch) przed dwoma rzeczami po pierwsze sprawdzamy, czy podany parametr ma niezerową długość (czy w ogóle został podany), a po drugie, czy da się go przekonwertować na liczbę (czy jest poprawną liczbą całkowitą). Nieistotne jest tu, że na pierwszej stronie były zastosowane kontrolki walidujące nie można niestety wierzyć wszystkim danym przysyłanym z Internetu. Jeśli występuje błąd, przeglądarka jest kierowana na stronę pierwszą. 6

7 Jeśli dane wyglądają na poprawne, to przekazany parametr jest wyświetlany w kontrolce LabLiczba oraz odczytywana jest jego wartość liczbowa. Następnie tworzona jest tablica wyniki i zapisywane są do niej kwadraty liczb, zgodnie z żądaną ich liczbą. Ostatnim elementem jest metoda wyświetlająca kwadraty w tabeli TblWyniki. Przykład 16. Dynamiczne tworzenie wierszy w tabeli void Wyswietl(long[] kwadraty, Table tabela) { int i = 1; foreach (long kwadrat in kwadraty) { // komórka z liczbą TableCell c1 = new TableCell(); c1.text = " " + (i++).tostring() + " "; c1.horizontalalign = HorizontalAlign.Center; // komórka z wynikiem TableCell c2 = new TableCell(); c2.text = " " + kwadrat.tostring() + " "; c2.horizontalalign = HorizontalAlign.Center; // wiersz TableRow r = new TableRow(); r.cells.add(c1); r.cells.add(c2); // rozbudowa tabeli tabela.rows.add(r); Zastosowana jest tutaj pętla foreach, która pozwala na cykliczny odczyt zawartości tablicy liczb całkowitych podanej jako parametr. Najpierw tworzone są dwie komórki TableCell z liczbą (zliczaną niezależnie za pomocą zmiennej i warto zauważyć jak zmienia się jej wartość) oraz komórka z wynikiem. Następnie tworzony jest wiersz TableRow i są do niego dodawane komórki. Dodatkowe odstępy " " służą do lepszej prezentacji zawartości komórek. Na końcu wiersz jest dodawany do przekazanej tabeli Table. Nie jest tu istotne, czy w przekazanej do wyświetlenia tablicy są kwadraty liczb, sześciany, czy jeszcze coś innego. Nie ma również znaczenia, czy na stronie jest tylko jedna, czy wiele tabel do wyświetlania wyników. 7

8 5. Przechowywanie stanu na stronie Poprzedni temat dotyczył przekazywania stanu w postaci parametrów między stronami. Jednak ciekawszym zagadnieniem jest wykorzystanie wbudowanych mechanizmów ASP.NET do przechowywania stanu kontrolek (ich właściwości) między wywołaniami strony. Mowa tu głównie o mechanizmie ViewState, dzięki któremu w ukrytym polu formularza wysyłanym do przeglądarki zapamiętywany jest stan kontrolek. Stan ten przywracany jest na samym początku ponownego wywołania strony (tzw. PostBack). Daje to gwarancję zachowania stanu między zdarzeniami dotyczącymi tej samej strony podobnie jak w zwykłych, lokalnych aplikacjach Cel przedsięwzięcia i zasada działania Aby sprawdzić w praktyce, jak takie rozwiązanie upraszcza tworzenie aplikacji ASP.NET, stworzymy stronę, na której będzie wyświetlana galeria zdjęć Pory roku. Dla każdej pory roku będzie dostępny link, kliknięcie w który spowoduje wyświetlenie miniaturek zdjęć dla odpowiednich trzech miesięcy. Kliknięcie w miniaturkę spowoduje natomiast wyświetlenie zdjęcia w normalnym rozmiarze. O ile w innych technologiach takie rozwiązanie często oparte jest o kilka stron, między którymi przesyłane są parametry, o tyle tutaj wystarczy jedna strona. Kluczem do stworzenia takiej strony jest wykorzystanie paneli, których zawartość będzie odpowiednio ukrywana lub wyświetlana. Rysunek 3. Planowany wygląd aplikacji 8

9 5.2. Budowa interfejsu użytkownika W celu stworzenia żądanej strony, wykonaj poniższe czynności: 30. Załóż na dysku twardym własny katalog na pliki dla tego zadania. 31. Skopiuj do tego katalogu z załączonych materiałów zawartość katalogu PoryRoku, czyli następujące podkatalogi: mini, foto, ads oraz plik: ads_468x60.xml. 32. Otwórz program WebMatrix. 33. Stwórz nową stronę ASP.NET Page, upewnij się czy w polu Language wybrana została opcja C#, a następnie zapisz stronę w swoim katalogu, w pliku o nazwie PoryRoku.aspx. 34. Wstaw do tej strony kontrolkę AdRotator wyświetlającą zmieniające się reklamy i nazwij ją AdRotatorTop (właściwość (ID)). Ustaw jej właściwość AdvertismentFile tak, aby zawierała nazwę przygotowanego pliku opisującego reklamy (ads_468x60.xml). Będą one pobierane z podkatalogu ads. 35. W następnej linii wstaw kontrolkę Panel. Nadaj jej nazwę PanelCalosc. 36. Kliknij w kontrolkę AdRotatorTop i wciśnij na klawiaturze kursor w lewo, aby wejść do edycji akapitu. Zmień wyrównanie elementów akapitu na centrowanie (ustaw właściwość align na Center). Wykonaj taką samą czynność dla kontrolki PanelCalosc. 37. Zaznacz kontrolkę PanelCalosc i zmień szerokość (właściwość Width) na 600px. 38. Wstaw do panelu cztery kontrolki LinkButton, nazywając je LBtnPora1, LBtnPora2, LBtnPora3 i LBtnPora4 oraz ustawiając odpowiednio napisy (Text) na nazwy kolejnych pór roku. 39. Kliknij dwa razy w kontrolkę PanelCalosc, aby przejść do edycji jego zawartości. Usuń napis Panel, zaś każdą kontrolkę LinkButton rozdziel od sąsiednich dwoma spacjami. 40. Przejdź na koniec linii w panelu i dodaj nowy akapit (naciścij Enter). Wstaw teraz jeden za drugim dwa panele. Nazwij je PanelMini i PanelFoto. Ustaw każdemu z nich szerokość (Width) na 600px. 41. Usuń z kontrolki PanelMini napis Panel, wstaw kontrolkę LinkButton i nazwij ją LBtnZwin. 42. Stwórz teraz nowy akapit (naciśnij Enter) i wstaw tabelę poleceniem HTML Insert Table. 43. Podaj następujące dane: Rows: 1 (liczba wierszy), Width: 300 (szerokość), Columns: 3 (liczba kolumn), Height: 50 (wysokość). 44. Włącz wyświetlanie ramki tabeli ustaw jej właściwość border na 1. 9

10 45. W pierwszej komórce tabeli ustaw wyrównanie align na Center, wstaw kontrolkę ImageButton (nazwij ją ImbMini1), zaznacz ją, wciśnij na klawiaturze kursor w prawo, wstaw złamanie wiersza (naciśnij Shift + Enter) i na końcu wstaw kontrolkę LinkButton (nazwij ją LBtnMiesiac1). 46. Czynność z punktu 15 powtórz dla pozostałych dwóch komórek tabeli, nazywając odpowiednio kontrolki. 47. Usuń z kontrolki PanelFoto napis Panel, wstaw kontrolkę LinkButton i nazwij ją LBtnPowrot. 48. Stwórz teraz nowy akapit (naciśnij Enter) i wstaw tabelę poleceniem HTML Insert Table. 49. Podaj następujące dane: Rows: 1 (ilość wierszy), Width: 50 (szerokość), Columns: 1 (ilość kolumn), Height: 50 (wysokość). 50. Włącz wyświetlanie ramki tabeli ustaw jej właściwość border na W komórce tabeli ustaw wyrównanie align na Center. Następnie wstaw do środka kontrolkę Image, która będzie wyświetlać obrazek w naturalnej wielkości. Nazwij ją ImgFoto. 52. Pod tabelą wstaw kontrolkę Label i nazwij ją LabMiesiac. 53. Pozmieniaj wyrównanie (align) w akapitach i tabelach tak, aby uzyskać wygląd aplikacji zgodny z założonym. 54. Na końcu wyłącz wyświetlanie paneli PanelMini oraz PanelFoto, ustawiając właściwości Visible na False. 55. Ustaw właściwości kontrolek zgodnie z poniższą tabelą: 10

11 Kontrolka Nazwa kontrolki (ID) Nazwa właściwości Wartość właściwości AdRotator AdRotatorTop AdvertismentFile ads_468x60.xml Height 60 Width 468 Panel PanelCalosc Width

12 LinkButton LBtnPora1 Text Wiosna LinkButton LBtnPora2 Text Lato LinkButton LBtnPora3 Text Jesień LinkButton LBtnPora4 Text Zima Panel PanelMini Visible False Width 600px ImageButton ImbMini1 Visible False ImageButton ImbMini2 Visible False ImageButton ImbMini3 Visible False LinkButton LBtnMiesiac1 Visible False LinkButton LBtnMiesiac2 Visible False LinkButton LBtnMiesiac3 Visible False Panel PanelFoto Visible False Width 600px Image ImgFoto Visible False Label LabMiesiac Visible False 56. Zapisz dokonane zmiany i sprawdź, czy strona poprawnie działa. Powinny wyświetlać się komunikaty o prawidłowych (bądź nieprawidłowych) liczbach Centralna obsługa zdarzeń Istnieje jedna, dobrze znana reguła programistyczna, o angielskiej nazwie DRY: Nie powtarzaj się (ang. Don t Repeat Yourself). Oznacza ona mniej więcej tyle, że w dobrze napisanym kodzie nie ma sekcji, które są po prostu skopiowane i delikatnie zmienione, gdyż są one kłopotliwe w utrzymaniu, zwłaszcza przy zmianach (np. skąd wiadomo, że wszędzie, gdzie trzeba, są już wprowadzone potrzebne zmiany?). Zamiast tego pisze się metody, które zamykają w sobie wymaganą funkcjonalność, zaś zmienne elementy zamienia się na parametry. W ten sposób ewentualne zmiany wystarczy wprowadzać w jednym miejscu, zaś pozostała część programu automatycznie z nich korzysta. My także zastosujemy się do tej zasady i stworzymy bardzo prostą bo jednolinijkową obsługę zdarzeń kontrolek znajdujących się na stronie. Te pojedyncze linijki będą wywoływać odpowiednie metody wykonawcze, przekazując im wymagane parametry. Rozpoczniemy od pustych wersji tych metod, następnie stworzymy obsługę zdarzeń, aby na końcu napisać właściwą treść metod wykonawczych. W tym momencie strona będzie już działać. Przykład 17. Początkowa wersja metod wykonawczych // Reakcja na kliknięcie w nazwę pory roku. // Wyświetla miniaturki dla żądanej pory roku (gdy Pora równa 1-4) // lub ukrywa panel miniaturek (gdy Pora równa 0). void AktywujPoreRoku(int Pora) { 12

13 // Ustawia ścieżki do miniaturek obrazków oraz opisy do nich. void AktywujMiesiace(int Start) { // Ustawia ścieżkę i opis do dużego obrazka wybranego miesiąca. void PokazMiesiac(string SciezkaObrazka, string Opis) { Jak widać, logika działania podzielona jest na trzy metody. Rozpoczniemy od wykorzystania pierwszej z nich AktywujPoreRoku. W tym celu dla kontrolki LBtnPora1 dodaj obsługę zdarzenia Click i wpisz wywołanie tej metody, z parametrem 1. Podobną obsługę dodaj dla kontrolek LBtnPora2, LBtnPora3 i LBtnPora4. Dzięki temu klikanie w nazwy pór roku będzie wyświetlać odpowiednie miniaturki zdjęć. Natomiast dla kontrolki LBtnZwin w obsłudze zdarzenia Click wpisz wywołanie metody z parametrem 0 będzie to ukrywać wszystkie miniaturki. Przykład 18. Obsługa zdarzeń dla wyboru pór roku void LBtnPora1_Click(object sender, EventArgs e) { AktywujPoreRoku(1); void LBtnPora2_Click(object sender, EventArgs e) { AktywujPoreRoku(2); void LBtnPora3_Click(object sender, EventArgs e) { AktywujPoreRoku(3); void LBtnPora4_Click(object sender, EventArgs e) { AktywujPoreRoku(4); void LBtnZwin_Click(object sender, EventArgs e) { AktywujPoreRoku(0); Drugą część stanowi wyświetlanie obrazka w pełnym rozmiarze, w reakcji na kliknięcie w miniaturkę lub podpis pod nią. Odpowiada za to metoda PokazMiesiac. W tym celu dla kontrolki LBtnMiesiac1 stwórz obsługę zdarzenia Click i wpisz wywołanie tej metody, podając odczytaną z miniaturki ścieżkę do obrazka oraz opis z kontrolki pod nią. Metoda 13

14 PokazMiesiac zamieni podaną ścieżkę na ścieżkę do dużego obrazka i wpisze ją do kontrolki ImgFoto, a podany opis skopiuje do etykietki LabMiesiac poniżej. Podobną obsługę zdarzeń Click stwórz także dla kontrolek LBtnMiesiac2 i LBtnMiesiac3. Pozostaje tylko pytanie, co z kontrolkami ImbMini1 ImbMini3? Ponieważ mają one robić to samo, co kontrolki LinkButton, najłatwiej będzie wywoływać samodzielnie obsługę odpowiednich zdarzeń Click. W ten sposób zamiast kopiować wywołanie metody PokazMiesiac, sterowanie zostanie przekazane z jednej metody obsługi zdarzenia do drugiej. Dopiero tam będzie umieszczone właściwe wywołanie metody PokazMiesiac. Takie rozwiązanie będzie ponadto zgodne z regułą DRY. Obsługa zdarzenia Click dla kontrolki LBtnPowrot będzie wyjątkowo dwulinijkowa. Chodzi tu bowiem tylko o ukrycie panelu z dużym zdjęciem, a pokazanie panelu z miniaturkami. Dociekliwi mogą także zauważyć, że drugi parametr przekazywany przy wywołaniu będzie ustawiany na null, jak np. przy LBtnMiesiac1_Click(sender, null);. Można tak zrobić, ponieważ nie jest on wykorzystywany, ale przede wszystkim dlatego, że obiekty przenoszące informację o zdarzeniach Click kontrolek LinkButton i ImageButton są różne (EventArgs dla LinkButton, zaś ImageClickEventArgs dla ImageButton). Przykład 19. Obsługa zdarzeń dla wyboru miesięcy void LBtnMiesiac1_Click(object sender, EventArgs e) { PokazMiesiac(ImbMini1.ImageUrl, LBtnMiesiac1.Text); void LBtnMiesiac2_Click(object sender, EventArgs e) { PokazMiesiac(ImbMini2.ImageUrl, LBtnMiesiac2.Text); void LBtnMiesiac3_Click(object sender, EventArgs e) { PokazMiesiac(ImbMini3.ImageUrl, LBtnMiesiac3.Text); void ImbMini1_Click(object sender, ImageClickEventArgs e) { LBtnMiesiac1_Click(sender, null); void ImbMini2_Click(object sender, ImageClickEventArgs e) { 14

15 LBtnMiesiac2_Click(sender, null); void ImbMini3_Click(object sender, ImageClickEventArgs e) { LBtnMiesiac3_Click(sender, null); void LBtnPowrot_Click(object sender, EventArgs e) { PanelFoto.Visible = false; PanelMini.Visible = true; 5.4. Logika zmiany wyglądu strony Pora na wstawienie treści metody pokazującej miniaturki zdjęć dla wybranej pory roku. Wykorzystamy tu ciekawe rozwiązanie uchwyty kontrolek LinkButton umieszczone będą w tablicy. Pozwoli to na proste wyłączenie pogrubienia wszystkich linków w pętli for oraz na ustawienie pogrubienia dla aktywnej pory roku. W tym celu wystarczy jedna linia kodu to również jest zastosowanie reguły DRY. Jeśli przekazany będzie numer pory roku od 1 do 4, wywołana zostanie metoda AktywujMiesiace, z podaniem numeru pierwszego miesiąca dla tej pory, pomniejszonego o 1 (czyli: wiosna 0, lato 3, jesień 6, zima 9). Jeśli zaś numer pory roku będzie równy 0, panele z miniaturkami oraz ze zdjęciem zostaną ukryte (kliknięcie w kontrolkę LBtnZwin). Przykład 20. Reakcja na kliknięcie w nazwę pory roku void AktywujPoreRoku(int Pora) { LinkButton[] Linki = { LBtnPora1, LBtnPora2, LBtnPora3, LBtnPora4 ; // Wyłączenie pogrubienia wszystkim linkom 15

16 for (int i = 0; i < Linki.Length; i++) Linki[i].Font.Bold = false; // Opcjonalne włączenie pogrubienia wybranego linku if ((Pora >= 1) && (Pora <= Linki.Length)) { Linki[Pora - 1].Font.Bold = true; AktywujMiesiace((Pora - 1) * 3); else { PanelMini.Visible = false; PanelFoto.Visible = false; Zajmiemy się teraz metodą pokazującą żądane miniaturki. Potrzebne tu informacje będą ponownie umieszczone w tablicach. Tablica Miesiące jest kluczowa dla działania całej strony. Jest to dwuwymiarowa tablica, przechowująca 12 par napisów nazwy plików miniaturek oraz nazwy miesięcy. Mimo że bardzo podobne, nazwy te nie są takie same. Z nazw plików z rozmysłem zostały usunięte polskie znaki, aby pozbyć się problemu wyboru kodowania. Natomiast w nazwach miesięcy polskie znaki zostały zachowane (gdyż będą wyświetlane na stronie). Rozpoczynając od podanego indeksu Start (równego 0, 3, 6 lub 9), trzy pary danych będą kopiowane z tej tablicy do kontrolek umieszczonych w tablicach Obrazki i Opisy. Dokładnie to robi poniższa pętla for zmienia ścieżkę do pliku z miniaturką (dodając nazwę katalogu "mini/") oraz podpis (nazwę miesiąca), na końcu odpowiednio ustawiana jest widoczność paneli. Przykład 21. Wyświetlenie miniaturek zdjęć dla miesięcy void AktywujMiesiace(int Start) { string[][] Miesiace = { new string[] {"mini_marzec.gif", new string[] {"mini_kwiecien.gif", new string[] {"mini_maj.gif", "marzec", "kwiecień", "maj", new string[] {"mini_czerwiec.gif", new string[] {"mini_lipiec.gif", new string[] {"mini_sierpien.gif", "czerwiec", "lipiec", "sierpień", 16

17 new string[] {"mini_wrzesien.gif", "wrzesień", new string[] {"mini_pazdziernik.gif", "październik", new string[] {"mini_listopad.gif", "listopad", ; new string[] {"mini_grudzien.gif", new string[] {"mini_styczen.gif", new string[] {"mini_luty.gif", "grudzień", "styczeń", "luty", ImageButton[] Obrazki = { ImbMini1, ImbMini2, ImbMini3 ; LinkButton[] Opisy = { LBtnMiesiac1, LBtnMiesiac2, LBtnMiesiac3 ; // Ustawienie ścieżek do miniaturek oraz nazw miesięcy w opisach for (int i = 0; i < Obrazki.Length; i++) { string NazwaPliku = Miesiace[Start + i][0]; string Opis = Miesiace[Start + i][1]; Obrazki[i].ImageUrl = "mini/" + NazwaPliku; Opisy[i].Text = Opis; PanelMini.Visible = true; PanelFoto.Visible = false; Trzecia z metod PokazMiesiac korzysta z informacji zapamiętanych w kontrolkach (ścieżka do miniaturki oraz podpis) w celu stworzenia ścieżki do dużego zdjęcia dla kontrolki ImgFoto oraz opisu dla etykietki LabMiesiac. Wykorzystana jest tu wiedza o tym, że wszystkie miniaturki znajdują się w podkatalogu mini, a zdjęcia w podkatalogu foto, oraz że pliki mają charakterystyczne nazwy. W ten sposób nazwa do zdjęcia tworzona jest przez odrzucenie 10 początkowych znaków mini/mini_ oraz rozszerzenia.gif i dołączenia do wynikowego napisu (czyli miesiąca) nazwy podkatalogu foto/ oraz rozszerzenia.jpg. Wykorzystane są tutaj metody klasy string: Substring() oraz LastIndexOf(). Na końcu odpowiednio ustawiana jest widoczność paneli. Przykład 22. Wyświetlenie miniaturek zdjęć dla miesięcy void PokazMiesiac(string SciezkaObrazka, string Opis) { int Poz = SciezkaObrazka.LastIndexOf(".gif"); string NazwaPliku = SciezkaObrazka.Substring(10, Poz - 10); ImgFoto.ImageUrl = "foto/" + NazwaPliku + ".jpg"; LabMiesiac.Text = Opis; 17

18 PanelMini.Visible = false; PanelFoto.Visible = true; Jeśli wszystko dobrze poszło, czyli kod został poprawnie wpisany, wszystkie zdarzenia są odpowiednio dodane do kontrolek i zgadzają się ścieżki do obrazków, to strona jest skończona! Powstałe rozwiązanie polega na rozsądnym uniknięciu zbędnego powtarzania kodu, przekazywaniu istotnych parametrów do metod oraz zorganizowaniu przetwarzanych danych w tablice. Taki sposób tworzenia strony ASP.NET kładzie nacisk na przemyślane rozwiązanie problemu, a niekoniecznie na szybkie pisanie dużej ilości po prostu działającego kodu niskiej jakości. Warto o tym pamiętać. 18

5. Tworzenie prostego kalkulatora

5. Tworzenie prostego kalkulatora 5. Tworzenie prostego kalkulatora 5.1. Cel przedsięwzięcia i zasada działania Nadeszła już pora, żeby stworzyć konkretną aplikację w ASP.NET. Będzie to kalkulator, pozwalający wykonywać cztery podstawowe

Bardziej szczegółowo

Ćwiczenie 8. Kontrolki serwerowe

Ćwiczenie 8. Kontrolki serwerowe Ćwiczenie 8 Temat: Kontrolki serwerowe ASP.NET cz.2 Cel ćwiczenia: W ramach tego ćwiczenie student zapozna się z kolejnymi kontrolkami serwerowymi oraz z metodami ich walidacji, a także z kontrolkami umożliwiającymi

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

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

Infrastruktura aplikacji WWW

Infrastruktura aplikacji WWW ASP.NET WebForms Infrastruktura aplikacji WWW Gotowe rozwiązania architektoniczne i szkielety aplikacji zwalniają twórców aplikacji z implementacji infrastruktury, zwiększając ich produktywność Stanowy,

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

Aplikacje internetowe i rozproszone - laboratorium

Aplikacje internetowe i rozproszone - laboratorium Aplikacje internetowe i rozproszone - laboratorium ASP.NET Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005 oraz dostęp do bazy danych z tabelą

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

Dodaj do kontrolki MultiView dwie kontrolki View, nazywając je po kolei: ankietaglowna i podsumowanie.

Dodaj do kontrolki MultiView dwie kontrolki View, nazywając je po kolei: ankietaglowna i podsumowanie. 1. Wstaw linki do ankiet na stronie glownej aplikacji 2. Dodaj strone Ankieta.aspx do projektu 3.Dodawanie kontrolek MultiView Na stronie Default.aspx wstaw dwa odnośniki wskazujące na ankietę dla nowych

Bardziej szczegółowo

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH TABELE I FORMULARZE

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH TABELE I FORMULARZE LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH TABELE I FORMULARZE 1. TABELE 1.1. Definicja tabeli Definicja tabeli musi być umieszczona między znacznikami. W ich ramach umieszczane są definicje rzędów

Bardziej szczegółowo

TABULATORY - DOKUMENTY BIUROWE

TABULATORY - DOKUMENTY BIUROWE TABULATORY - DOKUMENTY BIUROWE Autoformatowanie Znaczniki tabulacji Ćwiczenie 1 Ćwiczenie 2 Wcięcia i tabulatory Objaśnienia i podpisy Wcięcia w akapitach Ćwiczenia Tabulatory są umownymi znacznikami powodującymi

Bardziej szczegółowo

Ćwiczenie: JavaScript Cookies (3x45 minut)

Ćwiczenie: JavaScript Cookies (3x45 minut) Ćwiczenie: JavaScript Cookies (3x45 minut) Cookies niewielkie porcje danych tekstowych, które mogą być przesyłane między serwerem a przeglądarką. Przeglądarka przechowuje te dane przez określony czas.

Bardziej szczegółowo

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

1. Umieść kursor w miejscu, w którym ma być wprowadzony ozdobny napis. 2. Na karcie Wstawianie w grupie Tekst kliknij przycisk WordArt. Grafika w dokumencie Wprowadzanie ozdobnych napisów WordArt Do tworzenia efektownych, ozdobnych napisów służy obiekt WordArt. Aby wstawić do dokumentu obiekt WordArt: 1. Umieść kursor w miejscu, w którym

Bardziej szczegółowo

Zadanie 9. Projektowanie stron dokumentu

Zadanie 9. Projektowanie stron dokumentu Zadanie 9. Projektowanie stron dokumentu Przygotowany dokument można: wydrukować i oprawić, zapisać jako strona sieci Web i opublikować w Internecie przekonwertować na format PDF i udostępnić w postaci

Bardziej szczegółowo

1.Formatowanie tekstu z użyciem stylów

1.Formatowanie tekstu z użyciem stylów 1.Formatowanie tekstu z użyciem stylów Co to jest styl? Styl jest ciągiem znaków formatujących, które mogą być stosowane do tekstu w dokumencie w celu szybkiej zmiany jego wyglądu. Stosując styl, stosuje

Bardziej szczegółowo

1. Przypisy, indeks i spisy.

1. Przypisy, indeks i spisy. 1. Przypisy, indeks i spisy. (Wstaw Odwołanie Przypis dolny - ) (Wstaw Odwołanie Indeks i spisy - ) Przypisy dolne i końcowe w drukowanych dokumentach umożliwiają umieszczanie w dokumencie objaśnień, komentarzy

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer

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 obsługi szablonów aukcji

Instrukcja obsługi szablonów aukcji Instrukcja obsługi szablonów aukcji spis treści 2 Ładowanie kodu szablonu bezpośrednio na Allegro.pl (edytor wizualny) 4 Edycja szablonu w edytorze wizualnym 7 Dodawanie zdjęć przy pomocy www.imageshack.us

Bardziej szczegółowo

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

PROBLEMY TECHNICZNE. Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS PROBLEMY TECHNICZNE Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS Jeżeli stwierdziłeś występowanie błędów lub problemów podczas pracy z programem DYSONANS możesz skorzystać

Bardziej szczegółowo

Podstawy JavaScript ćwiczenia

Podstawy JavaScript ćwiczenia Podstawy JavaScript ćwiczenia Kontekst:

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

e-wsparcie Barbara Muszko Aktualizacja Twojej witryny internetowej tak prosta, jak obsługa Worda

e-wsparcie Barbara Muszko Aktualizacja Twojej witryny internetowej tak prosta, jak obsługa Worda e-wsparcie Barbara Muszko Aktualizacja Twojej witryny internetowej tak prosta, jak obsługa Worda Logowanie do panelu administracyjnego Aby móc zarządzać stroną, należy zalogować się do panelu administracyjnego.

Bardziej szczegółowo

Instrukcja obsługi systemu Sky CMS

Instrukcja obsługi systemu Sky CMS Instrukcja obsługi systemu Sky CMS Tworzenie stron w systemie skycms 1. Logujemy się 2. Tworzenie nowej strony: Wchodzimy do zakładki Strony Dodaj nową stronę. Pokażą się zakładki Strona, Powiązania strony,

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium JavaServer Pages Celem ćwiczenia jest zbudowanie kilku prostych stron internetowych z użyciem technologii JSP. Podczas ćwiczenia wykorzystany zostanie algorytm sortowania bąbelkowego

Bardziej szczegółowo

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

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2. Spis treści: 1 Podstawy pracy z aplikacją... 2 1.1 Układ strony... 2 strona 1 z 7 1 Podstawy pracy z aplikacją InDesign jest następcą starzejącego się PageMakera. Pod wieloma względami jest do niego bardzo

Bardziej szczegółowo

Instrukcja redaktora strony

Instrukcja redaktora strony Warszawa 14.02.2011 Instrukcja redaktora strony http://przedszkole198.edu.pl wersja: 1.1 1. Zasady ogólne 1.1. Elementy formularza do wprowadzania treści Wyróżniamy następujące elementy do wprowadzania

Bardziej szczegółowo

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

I. Program II. Opis głównych funkcji programu... 19 07-12-18 Spis treści I. Program... 1 1 Panel główny... 1 2 Edycja szablonu filtrów... 3 A) Zakładka Ogólne... 4 B) Zakładka Grupy filtrów... 5 C) Zakładka Kolumny... 17 D) Zakładka Sortowanie... 18 II.

Bardziej szczegółowo

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

Przed rozpoczęciem pracy otwórz nowy plik (Ctrl +N) wykorzystując szablon acadiso.dwt Przed rozpoczęciem pracy otwórz nowy plik (Ctrl +N) wykorzystując szablon acadiso.dwt Zadanie: Utwórz szablon rysunkowy składający się z: - warstw - tabelki rysunkowej w postaci bloku (według wzoru poniżej)

Bardziej szczegółowo

UONET+ - moduł Sekretariat. Jak wykorzystać wydruki list w formacie XLS do analizy danych uczniów?

UONET+ - moduł Sekretariat. Jak wykorzystać wydruki list w formacie XLS do analizy danych uczniów? UONET+ - moduł Sekretariat Jak wykorzystać wydruki list w formacie XLS do analizy danych uczniów? W module Sekretariat wydruki dostępne w widoku Wydruki/ Wydruki list można przygotować w formacie PDF oraz

Bardziej szczegółowo

Zadanie 3. Praca z tabelami

Zadanie 3. Praca z tabelami Zadanie 3. Praca z tabelami Niektóre informacje wygodnie jest przedstawiać w tabeli. Pokażemy, w jaki sposób można w dokumentach tworzyć i formatować tabele. Wszystkie funkcje związane z tabelami dostępne

Bardziej szczegółowo

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

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze ABC komputera dla nauczyciela Materiały pomocnicze 1. Czego się nauczysz? Uruchamianie i zamykanie systemu: jak zalogować się do systemu po uruchomieniu komputera, jak tymczasowo zablokować komputer w

Bardziej szczegółowo

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

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty Wybrane działy Informatyki Stosowanej Format HTML Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty dr hab. inż. Andrzej Czerepicki 2019 Definicja HTML HyperText Markup Language

Bardziej szczegółowo

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Projekt Hurtownia, realizacja rejestracji dostaw produktów Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące

Bardziej szczegółowo

Temat: Organizacja skoroszytów i arkuszy

Temat: Organizacja skoroszytów i arkuszy Temat: Organizacja skoroszytów i arkuszy Podstawowe informacje o skoroszycie Excel jest najczęściej wykorzystywany do tworzenia skoroszytów. Skoroszyt jest zbiorem informacji, które są przechowywane w

Bardziej szczegółowo

NAGŁÓWKI, STOPKI, PODZIAŁY WIERSZA I STRONY, WCIĘCIA

NAGŁÓWKI, STOPKI, PODZIAŁY WIERSZA I STRONY, WCIĘCIA NAGŁÓWKI, STOPKI, PODZIAŁY WIERSZA I STRONY, WCIĘCIA Ćwiczenie 1: Ściągnij plik z tekstem ze strony www. Zaznacz tekst i ustaw go w stylu Bez odstępów. Sformatuj tekst: wyjustowany czcionka Times New Roman

Bardziej szczegółowo

Dostępne grupy kontrolek. Podstawowe kontrolki Web

Dostępne grupy kontrolek. Podstawowe kontrolki Web Dostępne grupy kontrolek Toolbox (przybornik) zawiera obiekty, które moŝna umieścić na projektowanej stronie. Obiekty są pogrupowane w kategorie : Standard kontrolki ogólnego zastosowania. Wiele z nich

Bardziej szczegółowo

darmowe zdjęcia - allegro.pl

darmowe zdjęcia - allegro.pl darmowe zdjęcia - allegro.pl 1 Darmowe zdjęcia w Twoich aukcjach allegro? Tak to możliwe. Wielu sprzedających robi to od dawna i wbrew pozorom jest to bardzo proste. Serwis allegro oczywiście umożliwia

Bardziej szczegółowo

MS Word 2010. Długi dokument. Praca z długim dokumentem. Kinga Sorkowska 2011-12-30

MS Word 2010. Długi dokument. Praca z długim dokumentem. Kinga Sorkowska 2011-12-30 MS Word 2010 Długi dokument Praca z długim dokumentem Kinga Sorkowska 2011-12-30 Dodawanie strony tytułowej 1 W programie Microsoft Word udostępniono wygodną galerię wstępnie zdefiniowanych stron tytułowych.

Bardziej szczegółowo

MS Excell 2007 Kurs podstawowy Filtrowanie raportu tabeli przestawnej

MS Excell 2007 Kurs podstawowy Filtrowanie raportu tabeli przestawnej MS Excell 2007 Kurs podstawowy Filtrowanie raportu tabeli przestawnej prowadzi: dr inż. Tomasz Bartuś Kraków: 2008 04 04 Przygotowywanie danych źródłowych Poniżej przedstawiono zalecenia umożliwiające

Bardziej szczegółowo

najlepszych trików Excelu

najlepszych trików Excelu 70 najlepszych trików W Excelu 70 najlepszych trików w Excelu Spis treści Formatowanie czytelne i przejrzyste zestawienia...3 Wyświetlanie tylko wartości dodatnich...3 Szybkie dopasowanie szerokości kolumny...3

Bardziej szczegółowo

Wykład 03 JavaScript. Michał Drabik

Wykład 03 JavaScript. Michał Drabik Wykład 03 JavaScript Michał Drabik Język programowania wykorzystywany na stronach internetowych głównie w celu umożliwienia interakcji z użytkownikiem. Kod JavaScript może być umieszczany w kodzie XHTML

Bardziej szczegółowo

Zadanie 11. Przygotowanie publikacji do wydrukowania

Zadanie 11. Przygotowanie publikacji do wydrukowania Zadanie 11. Przygotowanie publikacji do wydrukowania Edytor Word może służyć również do składania do druku nawet obszernych publikacji. Skorzystamy z tych możliwości i opracowany dokument przygotujemy

Bardziej szczegółowo

BIBLIOTEKA LOKALNE CENTRUM WIEDZY PRAKTYCZNEJ PRZEWODNIK PO NARZĘDZIACH WARSZTAT NR 1: ARKUSZE KALKULACYJNE - MINI SKRYPT

BIBLIOTEKA LOKALNE CENTRUM WIEDZY PRAKTYCZNEJ PRZEWODNIK PO NARZĘDZIACH WARSZTAT NR 1: ARKUSZE KALKULACYJNE - MINI SKRYPT BIBLIOTEKA LOKALNE CENTRUM WIEDZY PRAKTYCZNEJ PRZEWODNIK PO NARZĘDZIACH WARSZTAT NR 1: ARKUSZE KALKULACYJNE - MINI SKRYPT 1. Wprowadzenie Arkusze kalkulacyjne Google umożliwiają łatwe tworzenie, udostępnianie

Bardziej szczegółowo

Nawigacja po długim dokumencie może być męcząca, dlatego warto poznać następujące skróty klawiszowe

Nawigacja po długim dokumencie może być męcząca, dlatego warto poznać następujące skróty klawiszowe Zestawienie wydatków rok 2015 1 Wstaw numerację stron. Aby to zrobić przejdź na zakładkę Wstawianie i w grupie Nagłówek i stopka wybierz Numer strony. Następnie określ pozycję numeru na stronie (na przykład

Bardziej szczegółowo

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

Rys. 3. Kod elementów na stronie po dodaniu kontrolek podstawowych. 1 2 Kontrolki standardowe WP7 Michał Ręczkowicz, Opublikowano: 2012-02-08 http://msdn.microsoft.com/pl-pl/library/rozpoczecie-pracy-z-windows-phone--kontrolki-standardowe W tym samouczku dowiesz się, jakie

Bardziej szczegółowo

Nowy szablon stron pracowników ZUT

Nowy szablon stron pracowników ZUT Nowy szablon stron pracowników ZUT Uczelniane Centrum Informatyki ZUT przygotowało nowy szablon stron pracowników, zunifikowany z obecnymi stronami ZUT. Serdecznie zachęcamy Państwa do migracji na nowy

Bardziej szczegółowo

Laboratorium 1 Wprowadzenie do PHP

Laboratorium 1 Wprowadzenie do PHP Laboratorium 1 Wprowadzenie do PHP Ćwiczenie 1. Tworzenie i uruchamianie projektu PHP w Netbeans Tworzenie projektu Uruchom środowisko NetBeans. Stwórz nowy projekt typu PHP Application (File->New Project,

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

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1).

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1). Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię usług sieciowych (ang. Web Services).

Bardziej szczegółowo

Własna strona WWW w oparciu o CMS

Własna strona WWW w oparciu o CMS Własna strona WWW w oparciu o CMS 1. Uruchomienie własnej strony WWW w oparciu o CMS Do uruchomienia własnej strony WWW, służy Aplikacja do zarządzania kontem w Uczelnianej Sieci Komputerowej ZUT, dostępna

Bardziej szczegółowo

WOJEWÓDZTWO PODKARPACKIE

WOJEWÓDZTWO PODKARPACKIE WOJEWÓDZTWO PODKARPACKIE UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ ROZWOJU REGIONALNEGO Instrukcja instalacji generatora wniosku o dofinansowanie projektu ze środków EFRR w ramach I osi priorytetowej Regionalnego

Bardziej szczegółowo

1. Wstawianie macierzy

1. Wstawianie macierzy 1. Wstawianie macierzy Aby otworzyć edytor równań: Wstaw Obiekt Formuła Aby utworzyć macierz najpierw wybieramy Nawiasy i kilkamy w potrzebny nawias (zmieniający rozmiar). Następnie w oknie formuły zamiast

Bardziej szczegółowo

Edycja strony: W edycję danej strony wchodzimy poprzez naciśnięcie opcji

Edycja strony: W edycję danej strony wchodzimy poprzez naciśnięcie opcji Edycja strony: W edycję danej strony wchodzimy poprzez naciśnięcie opcji uzyskujemy widok: a. Wstawianie tekstów Tekst możemy wpisywać bezpośrednio w panelu lub wklejać do edytora. Jeśli wklejamy tekst

Bardziej szczegółowo

Aplikacje internetowe laboratorium

Aplikacje internetowe laboratorium Aplikacje internetowe laboratorium ASP.NET - praca z bazą danych Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2010 oraz dostęp do bazy danych z

Bardziej szczegółowo

Podstawy informatyki

Podstawy informatyki Podstawy informatyki semestr I, studia stacjonarne I stopnia Elektronika rok akademicki 2012/2013 Pracownia nr 5 Edytor tekstu Microsoft Word 2007 mgr inż. Adam Idźkowski Pracownia nr 5 2 Edytor tekstu

Bardziej szczegółowo

Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0

Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0 Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0 UWAGA 1: Przed dokonaniem jakichkolwiek zmian, zalecamy skopiować wcześniej kod html modułu do pliku na lokalnym dysku. W przypadku problemów ułatwi

Bardziej szczegółowo

Jak posługiwać się edytorem treści

Jak posługiwać się edytorem treści Jak posługiwać się edytorem treści Edytor CKE jest bardzo prostym narzędziem pomagającym osobom niezaznajomionym z językiem HTML w tworzeniu interaktywnych treści stron internetowych. Razem z praktyka

Bardziej szczegółowo

Skróty klawiaturowe w PowerPoint

Skróty klawiaturowe w PowerPoint Pomoc online: W oknie Pomoc: Skróty klawiaturowe w PowerPoint F1 Otwieranie okna Pomoc. ALT+F4 Zamknięcie okna Pomoc. ALT+TAB Przełączenie między oknem Pomoc i aktywnym programem. ALT+HOME Powrót do strony

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

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

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

Zadanie 10. Stosowanie dokumentu głównego do organizowania dużych projektów

Zadanie 10. Stosowanie dokumentu głównego do organizowania dużych projektów Zadanie 10. Stosowanie dokumentu głównego do organizowania dużych projektów Za pomocą edytora Word można pracować zespołowo nad jednym dużym projektem (dokumentem). Tworzy się wówczas dokument główny,

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

SPIS TREŚCI. Sposób pierwszy... 3 Sposób drugi Ikony banków Ikony dostawców Strona1

SPIS TREŚCI. Sposób pierwszy... 3 Sposób drugi Ikony banków Ikony dostawców Strona1 INSTRUKCJA UŻYTKOWANIA SZABLONU ALLEGRO ZAKUPIONEGO W PAKIECIE STANDARD, MAXI LUB VIP. SPIS TREŚCI 1. OTRZYMANE PLIKI.... 2 2. DODANIE SZABLONU DO SERWISU ALLEGRO ORAZ JEGO UŻYTKOWANIE.... 3 Sposób pierwszy....

Bardziej szczegółowo

Podział na strony, sekcje i kolumny

Podział na strony, sekcje i kolumny Formatowanie stron i sekcji Formatowanie stron odnosi się do całego dokumentu lub jego wybranych sekcji. Dla całych stron ustalamy na przykład marginesy, które określają odległość tekstu od krawędzi papieru.

Bardziej szczegółowo

Padlet wirtualna tablica lub papier w Internecie

Padlet wirtualna tablica lub papier w Internecie Padlet wirtualna tablica lub papier w Internecie Umiejętność gromadzenia, a potem przetwarzania, wykorzystania i zastosowania informacji w celu rozwiązania jakiegoś problemu, jest uważana za jedną z kluczowych,

Bardziej szczegółowo

Zadanie 8. Dołączanie obiektów

Zadanie 8. Dołączanie obiektów Zadanie 8. Dołączanie obiektów Edytor Word umożliwia dołączanie do dokumentów różnych obiektów. Mogą to być gotowe obiekty graficzne z galerii klipów, równania, obrazy ze skanera lub aparatu cyfrowego.

Bardziej szczegółowo

- 1 Laboratorium fotografii cyfrowej Foto Video Hennig

- 1 Laboratorium fotografii cyfrowej Foto Video Hennig Foto Video Hennig, ul. Krótka 20,83-110 Tczew tel. 58 531 79 24,, kontakt@foto-hennig.pl Instalacja i użytkowanie programu FotoSender 3.0 Pobieranie i instalacja: 1. Pobieranie i instalacja Fotosendera

Bardziej szczegółowo

BAZA_1 Temat: Tworzenie i modyfikowanie formularzy.

BAZA_1 Temat: Tworzenie i modyfikowanie formularzy. BAZA_1 Temat: Tworzenie i modyfikowanie formularzy. Do wprowadzania danych do tabel słuŝą formularze. Dlatego zanim przystąpimy do wypełniania danymi nowo utworzonych tabel, najpierw przygotujemy odpowiednie

Bardziej szczegółowo

,Aplikacja Okazje SMS

,Aplikacja Okazje SMS , jest rozwiązaniem, które umożliwia bez umiejętności programistycznych uruchomić własną aplikację na fanpage-u firmy lub marki. Pozwala ona na dodanie numeru telefonu do swojej bazy w SerwerSMS.pl, umożliwiając

Bardziej szczegółowo

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6 Zawartość Wstęp... 1 Instalacja... 2 Konfiguracja... 2 Uruchomienie i praca z raportem... 6 Wstęp Rozwiązanie przygotowane z myślą o użytkownikach którzy potrzebują narzędzie do podziału, rozkładu, rozbiórki

Bardziej szczegółowo

Klawisze funkcyjne w OpenOffice.org Writer

Klawisze funkcyjne w OpenOffice.org Writer Klawisze funkcyjne w OpenOffice.org Writer F2 Ctrl + F2 F3 Ctrl + F3 F4 Shift + F4 F5 Ctrl + Shift + F5 F7 Ctrl + F7 F8 Ctrl + F8 Shift + F8 Ctrl+Shift+F8 F9 Ctrl + F9 Shift + F9 Ctrl + Shift + F9 Ctrl

Bardziej szczegółowo

Kurs programowania 2 - listy

Kurs programowania 2 - listy Kurs programowania 2 - listy Listy rozwijane (ComboBox) Listy rozwijane (rozwijalne) można tworzyć przy użyciu klasy ComboBox. W tabeli poniżej właściwości udostępniane przez tę kontrolkę. Najważniejsza

Bardziej szczegółowo

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

Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Podstawy programowania Ćwiczenie Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Tematy ćwiczenia algorytm, opis języka programowania praca ze środowiskiem, formularz, obiekty

Bardziej szczegółowo

Backend Administratora

Backend Administratora Backend Administratora mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 W tym celu korzystając z konsoli wydajemy polecenie: symfony generate:app backend Wówczas zostanie stworzona

Bardziej szczegółowo

lekcja 8a Gry komputerowe MasterMind

lekcja 8a Gry komputerowe MasterMind lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych

Bardziej szczegółowo

autor poradnika - KS Jak zamieszczać i edytować artykuły na szkolnej stronie internetowej

autor poradnika - KS Jak zamieszczać i edytować artykuły na szkolnej stronie internetowej Jak zamieszczać i edytować artykuły na szkolnej stronie internetowej adres naszej strony: www.zs3.wroc.pl logo liceum 1. Aby dodać artykuł należy się zalogować: System pokaże nazwę zalogowanego użytkownika

Bardziej szczegółowo

Edytor tekstu OpenOffice Writer Podstawy

Edytor tekstu OpenOffice Writer Podstawy Edytor tekstu OpenOffice Writer Podstawy OpenOffice to darmowy zaawansowany pakiet biurowy, w skład którego wchodzą następujące programy: edytor tekstu Writer, arkusz kalkulacyjny Calc, program do tworzenia

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium JavaServer Faces Celem ćwiczenia jest przygotowanie aplikacji internetowej z wykorzystaniem technologii JSF. Prezentowane ćwiczenia zostały wykonane w środowisku Oracle JDeveloper

Bardziej szczegółowo

Konfiguracja szablonu i wystawienie pierwszej aukcji allegro

Konfiguracja szablonu i wystawienie pierwszej aukcji allegro Konfiguracja szablonu i wystawienie pierwszej aukcji allegro Metod na wystawienie aukcji na allegro jest co najmniej 2. W pierwszej przechodzimy do zakładki MOJA SPRZEDAŻ, w USTAWIENIACH SPRZEDAŻY odnajdujemy

Bardziej szczegółowo

OPERACJE NA PLIKACH I FOLDERACH

OPERACJE NA PLIKACH I FOLDERACH OPERACJE NA PLIKACH I FOLDERACH Czym są pliki i foldery? krótkie przypomnienie Wszelkie operacje można przedstawić w postaci cyfrowej. Do tego celu wykorzystywane są bity - ciągi zer i jedynek. Zapisany

Bardziej szczegółowo

Dokument zawiera podstawowe informacje o użytkowaniu komputera oraz korzystaniu z Internetu.

Dokument zawiera podstawowe informacje o użytkowaniu komputera oraz korzystaniu z Internetu. Klub Seniora - Podstawy obsługi komputera oraz korzystania z Internetu Str. 1 Dokument zawiera podstawowe informacje o użytkowaniu komputera oraz korzystaniu z Internetu. Część 3 Opis programu MS Office

Bardziej szczegółowo

e-podręcznik dla seniora... i nie tylko.

e-podręcznik dla seniora... i nie tylko. Pliki i foldery Czym są pliki? Plik to w komputerowej terminologii pewien zbiór danych. W zależności od TYPU pliku może to być: obraz (np. zdjęcie z imienin, rysunek) tekst (np. opowiadanie) dźwięk (np.

Bardziej szczegółowo

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

Tak przygotowane pliki należy umieścić w głównym folderze naszego programu. Klub IKS www.informatyka.edu.pl To jeden z ostatnich odcinków naszego kursu. Mam nadzieję, że pisanie własnego programu było ciekawym doświadczeniem. Zaproponowana w tym odcinku funkcja uatrakcyjni twój program. Stworzymy tak zwane okno

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

Formatowanie c.d. Wyświetlanie formatowania

Formatowanie c.d. Wyświetlanie formatowania Formatowanie c.d. Wyświetlanie formatowania Dzięki tej funkcji można łatwo sprawdzić, w jaki sposób został sformatowany dowolny fragment tekstu. Aby jej użyć, wybierz polecenie naciśnij Shift+F1. Na prawo

Bardziej szczegółowo

Zasady programowania Dokumentacja

Zasady programowania Dokumentacja Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

Wybierz polecenie z menu: Narzędzia Listy i dokumenty

Wybierz polecenie z menu: Narzędzia Listy i dokumenty Listy seryjne - część pierwsza Przygotowanie korespondencji seryjnej zawsze składa się z trzech etapów. Przygotowanie treści dokumentu głównego. Stworzenie źródła danych (lub skorzystanie z gotowej bazy

Bardziej szczegółowo

Instrukcja zarządzania kontem jednostki samorządu terytorialnego w serwisie internetowym

Instrukcja zarządzania kontem jednostki samorządu terytorialnego w serwisie internetowym Instrukcja zarządzania kontem jednostki samorządu terytorialnego w serwisie internetowym www.esiop.legionowo.pl Rejestracja w serwisie: Aby utworzyć konto w serwisie, należy otworzyć w przeglądarce internetowej

Bardziej szczegółowo

Podręcznik użytkownika programu. Ceremonia 3.1

Podręcznik użytkownika programu. Ceremonia 3.1 Podręcznik użytkownika programu Ceremonia 3.1 1 Spis treści O programie...3 Główne okno programu...4 Edytor pieśni...7 Okno ustawień programu...8 Edycja kategorii pieśni...9 Edytor schematów slajdów...10

Bardziej szczegółowo

Przygotuj za pomocą tabulatorów element formularza. Utwórz pole tekstowe i sformatuj tak, aby dół napisu w polu był dokładnie nad kropkami.

Przygotuj za pomocą tabulatorów element formularza. Utwórz pole tekstowe i sformatuj tak, aby dół napisu w polu był dokładnie nad kropkami. FORMULARZE POLA TEKSTOWE Pole tekstowe Pole tekstowe kilka wierszy Karta Developer Formanty Formant i pole tekstowe Ćwiczenia Jak wypełnić danymi utworzony w edytorze tekstów formularz? Jak wpisać informacje

Bardziej szczegółowo

Jak przygotować pokaz album w Logomocji

Jak przygotować pokaz album w Logomocji Logomocja zawiera szereg ułatwień pozwalających na dość proste przygotowanie albumu multimedialnego. Najpierw należy zgromadzić potrzebne materiały, najlepiej w jednym folderze. Ustalamy wygląd strony

Bardziej szczegółowo

Formularze w programie Word

Formularze w programie Word Formularze w programie Word Formularz to dokument o określonej strukturze, zawierający puste pola do wypełnienia, czyli pola formularza, w których wprowadza się informacje. Uzyskane informacje można następnie

Bardziej szczegółowo

Instrukcja obsługi programu MPJ6

Instrukcja obsługi programu MPJ6 Instrukcja obsługi programu MPJ6 Spis treści 1. LOGOWANIE...3 2. INTERFEJS UŻYTKOWNIKA...4 2.1. WIDOK GŁÓWNY...5 2.1.1. Ustawienia...5 2.1.2. Wybór klasy...5 2.1.3. Zegar...5 2.1.4. Timer...6 2.1.5. Tryb

Bardziej szczegółowo

1. Logowanie do Systemu BCW

1. Logowanie do Systemu BCW 1. Logowanie do Systemu BCW Do systemu BCW może zalogować się osoba posiadająca aktywną kartę studencką lub pracowniczą UPWr. System ten składa się z trzech części: serwisu internetowego, do którego ma

Bardziej szczegółowo

Zadanie 1. Tworzenie nowej "strony sieci WEB". Będziemy korzystad ze stron w technologii ASP.NET.

Zadanie 1. Tworzenie nowej strony sieci WEB. Będziemy korzystad ze stron w technologii ASP.NET. Zadanie 1. Tworzenie nowej "strony sieci WEB". Będziemy korzystad ze stron w technologii ASP.NET. Ważne! Przy pierwszym uruchomieniu Visual Studio zostaniemy zapytani, jaki ma byd podstawowy język programowania

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium ASP.NET. Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005 oraz dostęp do serwera Microsoft SQL Server 2005. Treść ćwiczenia

Bardziej szczegółowo