PROGRAMOWANIE KOMPUTERÓW

Slides:



Advertisements
Podobne prezentacje
Katarzyna Szafrańska kl. II ti
Advertisements

PSZ wykład 2 > Przegląd komponentów biblioteki VCL
Programowanie w języku C++. Jak napisać prosty program obliczeniowy lub grę komputerową? Zbigniew Nagórny Pracownia Komputerowa Wyższa Szkoła Humanistyczno-Przyrodnicza.
PASCAL (3) dr Anna Kwiatkowska.
typy całkowite (całkowitoliczbowe)
PROGRAMOWANIE STRUKTURALNE
PROGRAMOWANIE STRUKTURALNE
Opracował: Nowak Paweł
MS Access 2000 Tworzenie tabel Piotr Górczyński 2005.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 6: Tablice, rekordy, zbiory.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 5: Typy porządkowe, wyliczeniowe i okrojone. Definiowanie.
P O D S T A W Y P R O G R A M O W A N I A
Programowanie imperatywne i język C Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie.
Katarzyna Szafrańska kl. II TI
Kurs Pascala – spis treści
Tworzenie prezentacji w programie PowerPoint
Programowanie w języku Visual Basic
INFORMATYKA Wykładowca: mgr Tadeusz Ziębakowski p. 126 I piętro (naprzeciw dziekanatu)
Kompilacja przechodnia
Programowanie obiektowe. Obiekty. Metody. Właściwości.
Wykład 2 struktura programu elementy języka typy zmienne
1 Języki i techniki programowania prowadzący dr Grzegorz Filipczyk.
Wstęp do programowania obiektowego
PASCAL Dr Anna Kwiatkowska.
Wprowadzenie do programowania w języku Turbo Pascal
PROGRAMOWANIE STRUKTURALNE WYKŁAD 2
Programowanie w języku Fortran 95
SKRÓTY KLAWISZOWE MYMEK I TOMIX.
C# Windows Forms Zastosowania Informatyki Wykład 2
Obiekty dynamiczne Tworzenie klas 3 MPDI Programowanie obiektowe W4.
Pliki tekstowe. Operacje na plikach. mgr inż. Agata Pacek.
Turbo Pascal Turbo Pascal - jedna z popularniejszych implementacji kompilatorów języka PASCAL, zintegrowane srodowisko programistyczne, produkt firmy Borland.
Podstawy programowania. Język C i C++– podstawy Temat: 1
Struktura programu w Turbo Pascalu.
© A. Jędryczkowski – 2006 r. © A. Jędryczkowski – 2006 r.
Poznaj bliżej program Microsoft Office Word 2007
Procedury i funkcje.
Wykład 5 – typy – stałe – tablice – elementy grafiki.
Programowanie w środowisku DELPHI
Pliki Pojęcie i rodzaje plików Definicja typu plikowego Operacje wykonywane na plikach elementowych.
ANNA BANIEWSKA SYLWIA FILUŚ
1 Wykład 8 Podprogramy. 2 Pojęcie i istota stosowania dzielenie programu na części (logicznie spójne) - nazwane - niezależne od pozostałych części - z.
Programowanie obiektowe – zastosowanie języka Java SE
TECHNOLOGIE INFORMATYCZNE Tydzień 6
MAKRA 1.
Edytor tekstu Word.
Wykład 1 Języki programowania Środowisko Delphi Komponenty
Visual Basic w Excelu.
Wykład 10 typ zbiorowy rekurencja.
Wykład 3 przykłady operacje na tekstach wyrażenia logiczne
1 Wykład 7 sortowanie BitButton format tekstu rysunki typ rekordowy.
Ms Access Formularze i raporty Marzena Nowakowska KIS, WZiMK, PŚk
Projektowanie stron WWW
Znaki specjalne Co i jak + brak przykładów.  Aby wstawić symbol lub znak specjalny należy na karcie Wstawianie w grupie Symbole kliknąć na przycisk Symbol.
Visual Basic w Excelu - podstawy
Podstawowe struktury danych. Typy danych.
Programowanie w językach skryptowych
Wprowadzenie do programowania w Pascalu mgr inż. Agata Pacek.
Wykład 4 Dr Aneta Polewko-Klim Dr Aneta Polewko-Klim
Podsumowanie wiedzy MPDI2 sem.3 INFORMATYKA. tworzenie nowego pliku i katalogu, nawigacja po katalogach, listowanie zawartości katalogu, zmiana nazw,
Dominik Benduski Michał Mandecki Podstawy Visual Basic w Excelu.
P ASCAL Definicje, deklaracje, podstawowe instrukcje 1.
Wykład 4 Dr Aneta Polewko-Klim Dr Aneta Polewko-Klim
Wykład 4 Dr Aneta Polewko-Klim
T. 18. E Proces DGA - Działania (operatorka).
Visual Basic for Applications
Programowanie obiektowe – zastosowanie języka Java SE
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5
Zapis prezentacji:

PROGRAMOWANIE KOMPUTERÓW Tomasz BAJOREK dr inż., pok. 28 tbajorek@prz.rzeszow.pl tbajorek.prz.rzeszow.pl PROGRAMOWANIE KOMPUTERÓW sem. 3 5w. + 15 lab. sem. 4 5w. + 15 lab. tematyka: podstawy programowania (obiektowego) elementy j. ObjectPascal w systemie Delphi program laboratorium - reguły odbywania zajęć i zaliczenia DELPHI 7 Personal - darmowe, www.borland.pl literatura: S.Wołek - Programowanie komputerów cz.I., cz. II pliki wykładów + przykładów - w sieci tbajorek.prz.rzeszow.pl zaliczenie - bez egzaminu laboratorium – test praktyczny 1

Istota programowania komputerów tworzenie własnych programów Chcemy zapisać, co trzeba liczyć (przetwarzać) w sposób prosty, wygodny i zrozumiały dla człowieka Program komputerowy w PaO język programowania (wysokiego poziomu) język komputerowy (wewnętrzny) tłumaczenie (translacja) komputer język programowania - zbiór reguł zapisu algorytmu (operacji obliczeniowych) system programowania - edycja, tłumaczenie, wykonywanie, uruchamianie (debugging) 2

ułatwia opracowywanie programów Wniosek: podwójna rola komputera ułatwia opracowywanie programów wykonuje programy (obliczenia) 3

Podział języków programowania j. obiektowe j. proceduralne (klasyczne) 4

Przegląd języków programowania styl tekstowy (DOS-owy): FORTRAN PL-1, ALGOL, COBOL PASCAL, C, C++ MODULA, ADA pr. naturalne pr. strukturalne pr. pakietowe pr. obiektowe BASIC styl graficzny (Windows-owy): SMALLTALK DELPHI C obiektowy VisualBASIC języki skryptowe stron WWW: po stronie klienta - JavaScript po stronie serwera – VBScript (ASP), PHP 5

Programowanie obiektowe (OOP) Istota struktura programu: stosuje się rzeczywiste obiekty, przedstawiane przez dane (pola) operacje programu dotyczą obiektów (metody – operacje na polach) wykonywanie programu: sterowane zdarzeniami (event_driven) - naciśnięcie klawisza, kliknięcie myszką, wybranie opcji menu, przepełnienie dyskietki program nie jest sekwencyjnie wykonywany oczekiwanie na zdarzenie wystąpienie zdarzenia  aktywizacja procedury obsługi (metody) realizacja wspomagana przez system operacyjny Windows 6

pochodna języka Pascal: System Delphi pochodna języka Pascal: zintegrowane środowisko tworzenia aplikacji IDE środowisko RAD język ObjectPascal przykład 1: dodajemy lub mnożymy dwie liczby sterowanie z menu przycisk koniec kolor tła wg przycisków radiowych kolor liczb wg przycisku wyboru 7

Modularna struktura programu składowe struktury: program główny (projekt) moduł (jednostka kompilowalna) – postać półskompilowana + łącznie - biblioteki podprogram (procedura, funkcja) 8

program, moduł - jednopoziomowy podprogram - hierarchiczny układ: program, moduł - jednopoziomowy podprogram - hierarchiczny struktura programu, modułu, podprogramu: - nagłówek - opis obiektów /część deklaracyjna, opisowa - zapis akcji /część operacyjna, akcyjna składowe: - deklaracje, definicje - instrukcje - komentarze - dyrektywy 9

ogólna struktura programu (modułu, podprogramu): unit nazwa; // nagłówek { inny dłuższy ................................................ komentarz } uses ... // deklaracja modułów const ... // definicja stałych type ... // definicja typów var ... // deklaracja zmiennych begin instrukcja_1; // operacje instrukcja_2; . . . end. część opisowa część akcyjna odwołania do składowych obiektów (właściwości, metody) - kwalifikowane Application.Terminate; Nadawca.Dane.Color := clGreen; Odbiorca.Wynik.Text := Nadawca.Dane.Text; Odbiorca.Wynik.Clear; 10

Narzędzia pakietu programowania – środowisko DELPHI Projektant formularzy dodawanie (usuwanie) komponentów graficznych z biblioteki VCL rozmieszczanie i zmiana rozmiarów komponentów: indywidualnie grupa komponentów (Shift + kliknięcie) lub kontur + menu kontekstowe Repertuar komponentów standardowe + dodatkowe okienka dialogowe dostęp + obsługa + raporty baz danych serwer i strony WWW Czynności projekt interfejsu – komponenty i ich właściwości (Inspektor obiektów) tworzenie kodu dla obsługi metod (Events) kompilacja i wykonanie (Run) - błędy 11

Inspektor obiektów wybór obiektu wskazanie w formularzu lista obiektów typy właściwości tekst (wpisywanie) wybór z listy właściwości strukturalne - rozwijanie lub okno ustawiania właściwości mnogościowe - rozwijanie składowych najważniejsze właściwości: - nazwa obiektu (dla operacji) - name - tytuł (nagłówek) - caption - kolor - color czcionka – font zawartość obsługa zdarzeń - nazwy procedur (tworzonych w edytorze): pierwsza 2 x kliknięcie obiektu inne 2 x kliknięcie w pozycję można wybierać z istniejących 12

Przykład: Edytor tekstu mechanizmy: wstawianie, usuwanie, wycinki, schowek zamiana na komentarz wspomaganie pisania (podpowiedzi) uzupełnianie tekstu (wstawianie nazwy) Ctrl+spacja : - po kropce - wybieranie tekstem lub wskazaniem koniec: kropka, spacja, Enter, średnik, nawias musi być poprawny początek wstawianie wzorców Ctrl+J podpowiedź o parametrach procedury/funkcji Ctrl+Shift+spacja przykład 2: przepisywanie z pola Edit do Memo 13

` Standardowe komponenty graficzne VCL Formularz (okno) - Form właściwości name: string - nazwa obiektu (formularza) caption: string - tytuł okna menu: - główne - obiekt popUpMenu: - kontekstowe - obiekt Przycisk akcji - Button właściwości name: string - nazwa obiektu (przycisku) caption: string - tytuł przycisku (&z - litera klawisza skrótu) zdarzenia i metody onClick - obsługa kliknięcia 14

Pole edycji jednowierszowej – Edit otrzymywanie lub wprowadzanie danych tekstowych pełna edycja informacji zaznaczanie wycinka tekstu i operacje właściwości (ważniejsze) text: string - treść wiersza zdarzenia i metody w. text := war_tekstowa - ustawienie (wpisanie) z. onClick - obsługa kliknięcia z. onChange - dowolna zmiana zawartości p. clear - wyzerowanie pola 15

Pole edycji wielowierszowej – Memo wartości wprowadzane z klawiatury lub programowo możliwość edycji wielowierszowej współpraca ze schowkiem właściwości: lines: Tstrings - cała lista wierszy lines[nr_w] - dostęp do wiersza (numeracja od 0) lines[nr_w] := wyr_tekstowe - zmiana treści wiersza lines.count: integer - liczba składowych listy 16

Przykłady: metody - dla lines : - p. clear; - zeruje - p. append( s: string ); - dodaje na koniec listy; - f. add( s: string ): integer; - podobnie wynik - nr wiersza (od 0) - p. insert( index: integer; s: string); - wstawia w pozycji index - p. delete( index: integer ); - usunięcie wiersza - p. loadFromFile( fileName: string ); - dopisanie z pliku tekstowego - p. saveToFile( fileName: string); - zapisanie do pliku Przykłady: Memo1.Lines.Add( 'Kowalski'); Memo1.Lines[2] := Edit1.Text; Memo1.Lines.Insert( 5, 'Kowalski‘ ); Memo1.Font.Size := 14; Memo1.Clear; 17

Język ObjectPascal - podstawowe elementy Alfabet języka symbole podstawowe (pascalowe) Słowa kluczowe nazwy zastrzeżone Identyfikatory (nazwy) ciąg liter (także _ ) lub cyfr, rozpoczynający się od litery, różny od słowa kluczowego Stałe numeryczne - liczby całkowite - ciąg cyfr, ewentualnie poprzedzonych przez + - rzeczywiste - zapis zwykły  m.n - zapis wykładniczy (naukowy) 18

var lista_nazw_zmiennych: integer; lista_nazw_zmiennych: real; Zmienne całkowite i rzeczywiste (proste) Zmienne przechowują dane – muszą być deklarowane ich nazwy (identyfikatory) i przyporządkowanie do typu var lista nazw zmiennych: typ1; lista nazw zmiennych: typ2; ....; Postać deklaracji: var lista_nazw_zmiennych: integer; lista_nazw_zmiennych: real; np.: var i, j, k: integer; a, b, suma: real;

Typy standardowe Typy liczbowe całkowite: Integer i inne (Byte, Word...) rzeczywiste podstawowy Real i inne Single Double Extended, różnią się zakresem Typ znakowy: Char Typ tekstowy (łańcuchowy): String Typ logiczny: Boolean (wartości true i false)

Typy definiowane Typ wyliczeniowy Definicja: ( lista wartości ) np. var dzien : (po, wt, sr, cz, pi, so ,ni); Typ okrojony Typ okrojony wyznacza podzbiór dowolnego typu porządkowego (boolean, char, całkowitoliczbowy, wyliczeniowy) zwanego typem bazowym: w1 .. w2   gdzie w1 <= w2 var dni : 1..100; Inne (strukturalne) poznamy potem – tablicowy, rekordowy, plikowy

Typy można definiować a potem używać np. type dni = (po, wt, sr, cz, pi, so ,ni); var dzien : dni; UWAGA: dni to nazwa typu, dzien to nazwa zmiennej, tylko w niej można przechować wartości, np. dzien := wt; //to jest instrukcja wykonywana Typ okrojony Typ okrojony wyznacza podzbiór dowolnego typu porządkowego (boolean, char, całkowitoliczbowy, wyliczeniowy) zwanego typem bazowym: w1 .. w2   gdzie w1 <= w2 var dni : 1..100; Inne (strukturalne) poznamy potem – tablicowy, rekordowy, plikowy

Wyrażenie arytmetyczne Postać - sensowna kombinacja – podobnie jak w Excelu: argumenty: - stałe - ich wartości - zmienne - ich wartości - wywołania funkcji - ich wartości operatory - jednoargumentowe - dwuargumentowe nawiasy - kolejność operacji wyrażenie  stała wyrażenie  zmienna wyrażenie  funkcja (wyrażenie) wyrażenie  wyrażenie operator wyrażenie 23

Operatory: 24

kolejność wykonywania operacji nawiasy - w pierwszym rzędzie ważność operatorów: jednoargumentowe multiplikatywne addytywne w grupie jednakowo ważnych - od lewej do prawej funkcje standardowe - wywołanie nazwa_funkcji( argument ) wartość wyrażenie - rekurencja ogólnie: zawsze nawias typ argumentu i wyniku określony 25

zaokrąglenie do całkowitej abs real/integer wartość bezwzględna   int real część całkowita frac część ułamkowa round integer zaokrąglenie do całkowitej trunc obcięcie do całkowitej maxint maksymalna wartość całkowita stała exp funkcja wykładnicza earg ln logarytm naturalny ln arg arg  0 sqr real integer kwadrat arg2 sqrt pierwiastek kwadratowy arg 0 sin sin arg arg w radianach cos cos arg arctan arctg arg wynik w radianach pi 26

Przykłady wyrażeń: 27

Podstawowe instrukcje proste Instrukcja przypisania - nadanie wartości zmiennej zmienna := wyrażenie; Np.: N := -234; suma := suma + x; Wprowadzanie i wyprowadzanie danych - z/do pola Edit funkcje konwersji tekstowo-numerycznej: intToStr( v: integer ): string; - integer  string strToInt( s: string ): integer; - string  integer strToFloat( s: string ): real; - string  real floatToStr( v: real ): string; - real  string 28

przykład praktyczny: 29

Stałe, zmienne i wyrażenia tekstowe stałe - znakowe i tekstowe napisy - pojedyncze znaki, ciągi (łańcuchy) znaków postać '.....' Przykłady: 'Nowak' stałę znakowe - typ char , np. 'A' zmienne łańcuchowe (tekstowe) - typ string np. 'Pan Kowalski' - deklaracja zmiennej string[ rozmiar ] istnieje mechanizm selekcji znaku zmienna[ pozycja ]  znak wyrażenia tekstowe - podobnie jak arytmetyczne: argumenty: - stała tekstowa - zmienna znakowa lub tekstowa - wywołanie funkcji o wartości znakowej lub tekstowej operator - jeden łączenia (konkatenacji) "+" Np.: 'Object' + 'Pascal'  ObjectPascal 30

Stałe, zmienne, wyrażenia i operacje logiczne stałe true prawda "1" tak false fałsz "0„ nie zmienne logiczne - typ boolean np.: var jest_zwolniony: boolean; wyrażenia logiczne - podobnie jak arytmetyczne: argumenty: - stałe logiczne - zmienne logiczne - funkcje o wartościach logicznych - relacje nawiasy - ( ) operatory 31

Np.: k > 2 suma <= 10.0 sin( 2*x + a) >= 0.5 relacja (porównanie) W1  W2  wartość true | false W1, W2  obydwa numeryczne (typu Real lub Integer) obydwa znakowe lub tekstowe (porównanie alfabetyczne) operator znaczenie = równy <> nierówny > większy >= większy lub równy < mniejszy <= mniejszy lub równy Np.: k > 2 suma <= 10.0 sin( 2*x + a) >= 0.5 nazwisko >= 'K' 32

Operatory logiczne negacja not arg np.: not( k<5 )  k >= 5 koniunkcja (iloczyn logiczny) arg1 and arg2 np.: ( k >= -5 ) and ( k <= 5 )  -5  k  +5 alternatywa (suma logiczna) arg1 or arg2 np.: ( k < -5 ) or ( k > 5 )  | k | > 5 33

Instrukcja warunkowa "jeśli", "if" postać skrócona if warunek then instrukcja; Wb postać pełna if warunek then instrukcja_1 else instrukcja_2; 34

- zmiana a, b lub c  chowa pola wyników i napis przykład: Założenia: - zmiana a, b lub c  chowa pola wyników i napis - gdy delta < 0  tylko napis "Wynik - brak pierwiastków" - gdy delta = 0  napis "Wynik - jeden pierwiastek podwójny" widać jedno pole wyniku i wartość pierwiastka - gdy delta > 0  napis "Wynik - dwa pierwiastki" widać dwa pola wyniku i dwie wartości pierwiastków - podwójne kliknięcie w tło okna  zeruje pola współczynników, chowa pola wyników i skraca napis na "Wynik:" 35

składowe okna i programu: - w_a, w_b, w_c - pola współczynników - wynik - etykieta - tekst o wyniku - x1, x2 - pola wyniku - a, b, c, delta - zmienne wewnętrzne procedury wyznaczania wyniku - wyznacz, koniec - procedury obsługi kliknięcia przycisków - Zeruj - obsługa podwójnego kliknięcia w okno - Schowaj, - obsługa zmiany wartości pól współczynników 36

schemat blokowy: 37

procedure TForm1.wyznaczClick(Sender: TObject); var a, b, c, // współczynniki równania delta: real; begin a := strToFloat(w_a.text); b := strToFloat(w_b.text); c := strToFloat(w_c.text); delta := b*b - 4*a*c; if delta < 0 then form1.wynik.Caption := 'Wynik - brak pierwiastków' else if delta = 0 then begin form1.wynik.Caption := 'Wynik - pierwiastek podwójny'; x1.text := floatToStr( -b/2/a ); x1.visible := true; end else begin delta := sqrt( delta ); form1.wynik.Caption := 'Wynik - dwa pierwiastki:'; x1.text := 'x1 = ' + floatToStr( ( -b - delta )/2/a ); x2.text := 'x2 = ' + floatToStr( ( -b + delta )/(2*a) ); x2.visible := true; end; 38

procedure TForm1.Schowaj (Sender: TObject); begin procedura Schowaj procedure TForm1.Schowaj (Sender: TObject); begin x1.Visible := false; x2.Visible := false; wynik.Visible := false end; procedura Zeruj procedure TForm1.Zeruj (Sender: TObject); begin Schowaj(Sender); w_a.Clear; w_b.Clear; w_c.Clear; end; 39

Instrukcja wyboru – case..of.. Instrukcja case umożliwia alternatywne wykonanie wielu instrukcji w zależności od wartości wyrażenia typu porządkowego. Postać instrukcji: case w of s1 :Instrukcja_1 ; s2 :Instrukcja_2 ; .... [ else Instrukcja_k ] end ; w - wyrażenie–selektor typu porządkowego (np. całkowitego, znakowego), s - stałe wyboru (etykiety wyboru) w możliwej postaci: s - pojedyncza wartość, s1, s2, sn - lista wartości, s1..s2 - zakres wartości (okrojenie), możliwe połączenie listy i zakresów, np. s1..s2, s3 , s4. 40

Przykład: var miesiac : 1..12 ; dni : 1..31 ; begin miesiac := StrToInt (Edit1.Text) ; case miesiac of 2 : dni := 28 ; {pojedyncza wartość} 4, 6 , 9, 11 : dni := 30 ; {lista} 1..12 : dni := 31 ; {zakres} {lub else dni := 31} end ; end; 41

begin end Instrukcja złożona (sekwencji) Przy konieczności wykonania więcej niż jednej instrukcji wewnątrz dowolnej instrukcji strukturalnej stosujemy tzw. instrukcję złożoną (sekwencji): begin ciąg instrukcji end

Iteracje Iteracje – użycie: sumowanie, obliczenia statystyczne, sortowanie, wyszukiwanie maksimum, minimum itp. Algorytmy: Zbiór elementów np. w tablicy (macierzy) – wyszukaj najmniejszy element: - załóż że 1-szy jest najmniejszy - sprawdź następny, jeśli mniejszy to zapamiętaj - czy ostatni? jeśli nie to powtórz poprzedni krok

Instrukcja for.. do.. (dla.. wykonuj..)

to downto for Z := W1 W2 do Instrukcja Postać: x := 0 ; i1:=1 ; for i := i1 to i2 do x := x+5 ; x := 0 ; for i := 1 to 3 do x := x+5 ; x := 0 ; for i := 3 downto 1 do x := x+i ; // użycie zmiennej sterującej w instrukcji

repeat until WB ; ciąg instrukcji x := 3 ; repeat x := x + 5 Instrukcja repeat..until.. (powtarzaj .. aż..) Postać: repeat ciąg instrukcji until WB ; Ciąg instrukcji wewnętrznych w instrukcji repeat..until..  jest powtarzany dopóty, dopóki wyrażenie logiczne WB posiada wartość false, zmiana na true powoduje zakończenie pętli x := 3 ; repeat x := x + 5 until x > 100 ; Uwaga: możliwość nieskończonej pętli !!

while WB do Instrukcja ; Instrukcja while..do.. (dopóki.. wykonuj..) Postać: while  WB  do  Instrukcja ; Działanie instrukcji polega na powtarzaniu wykonywania wewnętrznej instrukcji, dopóki wyrażenie logiczne WB posiada wartość true. Wartość ta jest sprawdzana każdorazowo przed wykonaniem instrukcji wewnętrznej. Uwaga: konieczność wykonania w instrukcji (także złożonej) takiej operacji, która wpływa na wartość wyrażenia logicznego, aby iteracja mogła się kiedyś skończyć.

Przykład: var i, suma : integer ; begin i := 2 ; suma := 0 ; while i <= 100 do suma := suma + i ; i := i + 2 ; end ;

DELPHI - PODOKNA KOMUNIKATÓW ShowMessage - komunikat informujący związane są z osobnymi oknami przekazują informację dla użytkownika, wymagającą podjęcia przez niego decyzji: - komunikat informujący - komunikat z dialogiem komunikat w formularzu użytkownika dialogu wejściowego ShowMessage - komunikat informujący p. ShowMessage( wyrażenie tekstowe ) - pokazuje tekst w dodatkowym oknie z przyciskiem OK - w pasku tytułowym nazwa aplikacji (programu .exe) 49

Menu główne mainMenu właściwości zasady: przedstawia pasek menu głównego - baza dla pozycji menu (sekcji) komponent niewidoczny - widać skutek nazwa obiektu ma być podana na jako właściwość menu formularza właściwości item - lista sekcji menu z ich zawartością (drzewo) items[ index:integer ]: TMenuItem - jedna sekcja lub opcja zasady: 2x kliknięcie w items lub w symbol menu  kreator menu (menu designer) dodawanie, usuwanie opcji tytuł sekcji (opcji) - & oznacza znak podkreślony (klawisz skrótu) podmenu  create submenu (operacja z menu podręcznego) 2x klik w pozycję  procedura obsługi (zdarzenie onClick) 50

Menu podręczne kontekstowe popupMenu pole menu kontekstowego - aktywizowanego prawym kliknięciem komponent niewidoczny - widać skutek nazwa obiektu ma być podana na jako właściwość popupMenu - formularza lub innego komponentu właściwości i metody items: Tmenu - lista sekcji menu z ich zawartością (drzewo) items[ index:integer ]: TMenuItem - jedna opcja lub podsekcja alignment: (paLeft, paCenter, paRight) - położenie pola menu w stosunku do kursora zasady: projektowanie jak menu główne  menu designer w formularzu może być wiele menu podręcznych związanych z różnymi komponentami (kontekst) 51

Przykład 3 52