|
Archiwum
|
wtorek, 03 czerwca 2008
Kod źródłowy FreeWord
Tak jak kiedyś napisałem, moim pierwszym programem napisanym w Delphi był prosty edytor tekstowy którego nazwałem FreeWord. Zrobiłem go tylko po to aby poszerzyć informacje na temat programowania. Myślę że właśnie początkującym najlepiej przyda się to źródło. Download: RapidShare.de Jak zrobić prosty edytor tekstowy.
Tutaj nie ma za wiele do tłumaczenia, chyba każdy wie co to edytor tekstowy. -----Co nam będzie potrzebne do pracy???----- Środowisko programistyczne (kompilator) Delphi 7 Personal Edition. (www.borland.pl) -----No to do roboty!!!!----- 1) Wrzucamy na formę 2 buttony z zakładki Standard (Caption : Otwórz, Zapisz) 2) Wrzucamy na formę 4 buttony z zakładki Standard (Caption : Wytnij, Wklej, Kopiuj, Usuń) 3) Wrzucamy na formę komponent Memo z zakładki Standard (w Memo szukamy w zakładce Properties : Scrollbars i zmieniamy wartość na ssVertical) 4) Wrzucamy na formę komponent OpenDialog z zakładki Dialogs 5) Wrzucamy na formę komponent SaveDialog z zakładki Dialogs Ustawiamy wszystko według własnego uznania. Mniej więcej powinno to tak wyglądać : http://img526.imageshack.us/img526/623/21323312al5.jpg -----Czas na kod!!!----- Pomiędzy formą, a kodem możemy się przełączać naciskając przycisk F12. --- Nad public declarations dopisujemy : --- Klikamy 2x na przycisk "Otwórz" i wklepujemy kod : procedure TForm1.Button1Click(Sender: TObject); var AfterD : String; a : integer; begin Memo1.Clear; AfterD := ''; if OpenDialog1.Execute then begin AssignFile(MyFile, OpenDialog1.FileName); Reset(MyFile); while not eof(MyFile) do begin Readln(MyFile, MyText); Memo1.Lines.Add(MyText); end; CloseFile(MyFile); end; end; --- Klikamy 2x na przycisk "Zapisz" i wklepujemy kod : procedure TForm1.Button2Click(Sender: TObject); begin if SaveDialog1.Execute then begin AssignFile(MyFile, SaveDialog1.FileName); Rewrite(MyFile); Writeln(Myfile,Memo1.Lines.GetText); CloseFile(MyFile); end; end; --- Klikamy 2x na przycisk "Kopiuj" i wklepujemy kod : --- Klikamy 2x na przycisk "Wklej" i wklepujemy kod : --- Klikamy 2x na przycisk "Wytnij" i wklepujemy kod : --- Klikamy 2x na przycisk "Usuń" i wklepujemy kod : No i to by było chyba na tyle!!! Nie będę dawał źródła, tym razem sami sobie poradźcie :] Program możecie udoskonalać jak wam się podoba, zmienić nazwę, modyfikować źródło itd. Jeśli ktoś chce umieścić ten artykuł na swojej stronie, wystarczy mi wysłać PM i mnie o tym poinformować. Jeśli ktoś wie mało o Delphi i chciałby się więcej nauczyć, podaje parę linków, które mogą się przydać : http://www.4programmers.net http://www.binboy.sphere.pl/ http://www.ofkurs.kgb.pl/ http://www.haxite.org/ http://www.hackme.pl/news.html http://www.4programmers.net/delphi/kompendium Życzę miłej nauki!!! ;) Jak zrobić trojana.
Dzisiaj przedstawie Wam jak zrobić prostego trojana. /*Nie biorę odpowiedzialności za sposób wykożystania zawartych tu wiadomości, Kurs część 12, ostatnia.
Komponent tabeli
Do wypełnienia tabeli służy komponent String Grid. Tabele tę określa się mianem dwuwymiarowej (przypomina arkusz kalkulacyjny). Podstawowymi właściwościami tego komponentu są:
1. Cells[Acol, Arow:Integer] - właściwość, która w postaci łańcucha oddaje zawartość komórki wskazanej parametrami, 2. Cols[Index:Integer] - właściwość, która oddaje kolumnę o numerze Index, 3. Rows[Index:Integer] - właściwość, która oddaje wiersz o numerze Index, 4. ColCount - właściwość, która oddaje liczbę kolumn, 5. RowCount - właściwość, która oddaje liczbę wierszy, 6. OnSelectCell - procedura; oddaje w swoich parametrach współrzędne komórki zaznaczonej przez użytkownika.
Zadanie 12.1. Utwórz elektroniczny dzienniczek ucznia. Aplikacja posiada tabelę, która zawiera liczbę przedmiotów oraz oceny.
1. Wstaw na formę komponent StringGrid. 2. W oknie ObjectInspector zmień jego właściwości:
3. Naciskając myszką znak "+" z lewej strony właściwości Options, rozwiń ich listę oraz zmodyfikuj pozycje:
4. Przejdź do okna modułu i po słowie Implementation wpisz procedurę wypełniającą zawartość tabeli:
5. Wybierz formę w oknie ObjectInspector i dla zdarzenia onCreate ( z zakładki Events) wpisz procedurę:
6. Sprawdź działanie programu (rysunek 12.1).
Rysunek 12.1. Działanie programu z zastosowaniem StringGrid.
To jest już koniec naszego kursu. Mam nadzieje że pomożę Ci on wejść w prawdziwy świat programowania. Kurs cz.11
Komponentem, który służy do tworzenia na formie stron z zakładkami, jest PageControl.
Zadanie 11.1. Napisz program, który będzie zawierał pole tekstowe oraz dwa paski narzędziowe umieszczone na dwóch osobnych zakładkach. Na pierwszej z nich będzie się dokonywać operacji na tekście, a druga posłuży do zmiany wyglądu pola Memo.
1. Wstaw na formę komponent PageControl z zakładki Win32. 2. Korzystając z menu kontekstowego, utwórz dwie zakładki (New Page): Operacje na tekście, Wygląd pola tekstowego. 3. Wstaw na formę komponent Memo. 4. Na pierwszej zakładce umieść przyciski: Wytnij, Kopiuj, Wklej i Zapisz do pliku. 5. Na drugiej zakładce umieść przyciski do zmieniania koloru pola tekstowego: Czerwony, Zielony, Niebieski i Żółty. 6. Podepnij odpowiednie instrukcje pod przyciski.
Czerwony - Memo1.Color:=ClRed; Zielony - Memo1.Color:=ClGreen; Niebieski - Memo1.Color:=ClBlue; Żółty - Memo1.Color:=ClYellow;
7. Sprawdź działanie programu.
Rysunek 11.1. Strony z zakładkami. Kurs cz.10
W poprzednich ćwiczeniach niejednokrotnie wykorzystywaliśmy komponent Memo. Służył on jednak tylko do zobrazowania innych zagadnień. Tym razem poznamy metody użycia pola tekstowego. Podstawowymi instrukcjami, które wykorzystuje się w przypadku komponentu Memo są:
Najważniejszą z właściwości pola tekstowego jest Lines (typ String). Dotyczy ona linii tekstu. Właściwość tę można zmieniać w oknie ObjectInspector lub korzystając z instrukcji:
Zadanie 10.1. Utwórz aplikację, która zawiera pasek z narzędziami oraz pole tekstowe, tak aby, korzystając z komponentu ToolBar, można było kopiować, wycinać, wklejać zaznaczony tekst oraz zapisywać zawartość pola Memo do pliku C:\swiatinformatyki.txt.
1. Wstaw na formę komponenty ToolBar oraz Memo. 2. Dodaj do paska narzędiowego pięć przycisków. 3. Korzystając z informacji podanych w poprzednim ćwiczeniu, umieść na przyciskach obrazki. 4. Dodaj do przycisków dymki z opisem działania tych przycisków. 5. Pod kolejne przyciski podepnij odpowiednie procedury. - dla przycisku do kopiowania tekstu:
- dla przycisku do wycinania tekstu:
- dla przycisku do wklejania tekstu:
- dla przycisku do zapisywania tekstu:
- dla przycisku wyłączającego działanie programu:
6. Sprawdź działanie aplikacji.
Rysunek 10.1. Mini-Word :) Kurs cz.9
Do tworzenia paska narzędzi służy komponent ToolBar z zakładki Win32.
Zadanie 9.1. Napisz program, który wyświetla okno do wpisywania tekstu, tworzy pasek z narzędziami do zmiany koloru komponentu Memo na żółty oraz kończy działanie aplikacji.
1. Wstaw na formę komponent ToolBar. 2. Klikając prawym przyciskiem na ten komponent, tworzymy dwa przyciski New Button (tak jak na rysunku 9.1).
Rysunek 9.1. Tworzenie przycisku dla paska narzędzi
3. Teraz wstawiamy na formę komponent ImageList. 4. Klikamy na ten komponent prawym przyciskiem i wybieramy opcję ImageListEditor. 5. Utworzymy listę obrazków dla tworzonych przycisków paska narzędziowego:
6. Dla każdego przycisku z paska narzędzi utwórz dymek z tekstem objaśniającym działanie przycisku. 7. Wstaw na formę komponent Memo. 8. Zmień jego właściwość Align na AlClient. Automatycznie dostosuje się on do rozmiarów okna tworzonego programu. 9. Dla przycisku, który ma zmienić kolor okna przeznaczonego do wpisywania tekstu wprowadź procedurę: memo1.color:=ClYellow; a dla drugiego przycisku wprowadź procedurę: close; 10. Sprawdź działanie programu (Rysunek 9.2)
Rysunek 9.2. Działanie programu z zadania 9.1. Kurs cz.8
ScrollBar
Komponent ten służy do sterowania wielkością jakiegoś elementu, np. służy do przewijania zawartości okna.
Podstawowymi właściwościami ScrollBar są:
Rysunek 8.1. Położenie pasków przewijania
Zadanie 8.1. Utwórz program, który będzie zawierał pasek przewijania ScrollBar. Od ustawienia tego komponentu zależeć będzie napis na komponencie Panel.
1. Wstaw na formę komponent ScrollBar oraz Panel. 2. Zmień właściwości paska przewijania według poniższego wzoru:
3. W oknie ObjectInspector wybierz zakładkę Events oraz dla zdarzenia OnChange wprowadź procedurę:
4. Sprawdź działanie aplikacji. Rysunek 8.2. Zastosowanie paska przewijania
Uwaga! Pozycja suwaka jest to zmienna liczbowa (Integer). Aby można było ją wyświetlić jako napis na komponencie Panel (String), musisz zmienić jej typ za pomocą instrukcji IntToStr, która działa ona także w drugą stronę (StrToInt). Kurs cz.7
ListBox
Podstawowymi właściwościami komponentu ListBox są: 1. Selected [numer] - wartość True tej właściwości oznacza, że element listy o określonym numerze jest wyselekcjonowany. 2. ItemIndex - właściwość ta określa numer (od zera) wyselekcjonowanego elementu.
Zadanie 7.1. Napisz aplikację, która będzie zawierać listę wyboru z nazwami kolorów. Po wybraniu koloru z listy nastąpi zmiana koloru okna programu.
1. Wstaw na formę komponent ListBox. 2. Zmodyfikuj odpowiednio właściwość Items komponentu, wpisując nazwy kolorów: czarny, biały, żółty, niebieski, czerwony. 3. Otwórz okno modułu (zdarzenie OnClick) dla formy w oknie ObjectInspector oraz wprowadź instrukcje:
4. Sprawdź działanie programu (Rysunek 7.1) Rysunek 7.1. Działanie programu z ćwiczenia 7.1
Zadanie 7.2. Uzupełnij poprzedni program o etykietę oraz o dwa komponenty RadioButton, decydujące o tym, który element aplikacji ma zmieniać kolor (forma, czy etykieta).
1. Wstaw na formę etykietę (Label) oraz dwa przyciski opcji. 2. Zmień właściwość Caption przycisków na Etykieta oraz Okno formy. 3. Zmień właściwość Checked komponentu Okno formy na True. 4. Zmodyfikuj procedurę podpiętą pod listę wyboru na:
5. Sprawdź działanie programu. Rysunek 7.2. Przykład zastosowania komponentu ListBox oraz RadioButton
ComboBox
Komponent ComboBox stanowi połączenie wyboru z listy z edycją nowego lub poprawieniem wybranego elementu.
Zadanie 7.3. Utwórz program, który po wybraniu imienia z pola ComboBox wyświetli jej jako napis na komponencie Label (Rysunek 7.3). Skorzystaj ze zdarzenia OnChange dla pola edycji z listą wyboru oraz instrukcji Label1.Caption:=ComboBox1.Text;.
Rysunek 7.3 Komponent ComboBox Kurs cz.6
Przyciski wyboru tworzy się za pomocą komponentu CheckBox. Służą one do zaznaczania elementów grupy. W odróżnieniu od przycisków RadioButton jednocześnie może być wybrany więcej niż jeden składnik.
Zadanie 6.1. Utwórz program, który za pomocą komponentów CheckBox będzie uwidaczniał komponenty typu Panel.
1. Wstaw na formę dwa komponenty CheckBox oraz Panel. 2. Zmień etykiety komponentów CheckBox na widoczny Panel1 oraz widoczny Panel2. 3. Zmień właściwość Visible komponentów Panel1 oraz Panel2 na False. 4. Podepnij pod przyciski wyboru odpowiednie instrukcje:
5. Sprawdź działanie programu. Rysunek 6.1. Działanie programu z ćwiczenia 6.1 |