Microsoft_Visual_C_2008_Praktyczne_przyklady_vc28pp.pdf

(327 KB) Pobierz
Microsoft Visual
C++ 2008. Praktyczne
przyk³ady
Autor: Mariusz Owczarek
ISBN: 978-83-246-2587-1
Format: 158×235, stron: 360
• Poznaj w praktyce œrodowisko Visual C++ 2008
• Dowiedz siê, jak korzystaæ z gotowych komponentów programistycznych
• Naucz siê pisaæ w C++ aplikacje przeznaczone dla systemu Windows
Wiele osób s³ysza³o o jêzyku C++, lecz ogromna wiêkszoœæ z nich na sam¹ myœl
o bli¿szym poznaniu go reaguje z podobn¹ rezerw¹, jak na pomys³ wybrania siê na
wakacyjny kurs jêzyka mandaryñskiego. Osoby te pope³niaj¹ jednak niewybaczalny
b³¹d i skutecznie odcinaj¹ siê od niezwykle interesuj¹cego œwiata nowoczesnego
programowania. Na ludzi biegle znaj¹cych C++ czeka bardzo wiele atrakcyjnych ofert
pracy, a niemalej¹ca popularnoœæ systemów Windows sprawia, ¿e najbardziej poszukiwani
w tej grupie s¹ specjaliœci znaj¹cy Visual C++, czyli wygodne w u¿yciu i bardzo
rozbudowane œrodowisko programistyczne firmy Microsoft. Nie trzeba chyba dodawaæ,
¿e zarabiaj¹ oni zwykle znacznie wiêcej ni¿ najlepsi nawet t³umacze z jêzyka
mandaryñskiego…
Jeœli chcesz do³¹czyæ do tej programistycznej elity, ju¿ dziœ siêgnij po odpowiednie
Ÿród³o wiedzy. Ksi¹¿ka „Microsoft Visual C++ 2008. Praktyczne przyk³ady” umo¿liwi
Ci g³adkie rozpoczêcie przygody z Visual C++, prezentuj¹c podstawowe informacje na
temat jêzyka, opisuj¹c œrodowisko programistyczne, sposób tworzenia aplikacji oraz
technikê zarz¹dzania danymi i korzystania z plików. Nauczysz siê z niej równie¿
w³aœciwego stosowania elementów kontrolnych i komponentów programistycznych.
Poznasz metody przetwarzania wielow¹tkowego, zagadnienia zwi¹zane z grafik¹
i ³¹czeniem siê z sieci¹, a ponadto dowiesz siê, jak skonstruowany jest kod programu.
Na tym jednak nie koniec, bowiem na kilku rozbudowanych i bardzo zró¿nicowanych
przyk³adach poznasz te¿ praktyczne zastosowanie ca³ej tej teorii, a wszystko przy
u¿yciu bezp³atnej wersji œrodowiska programistycznego firmy Microsoft.
• Podstawowe informacje na temat Visual C++ 2008
• Instalacja œrodowiska programistycznego
• Elementy sk³adowe aplikacji i sposoby u¿ywania kontrolek
• Zarz¹dzanie danymi i u¿ywanie plików
• U¿ywanie najwa¿niejszych komponentów programistycznych
• Wykorzystanie elementów graficznych
• Podstawy korzystania z w¹tków
• Korzystanie z komponentów sieciowych
• Opis jêzyka C++ i C++/CLI oraz struktury napisanych w nich programów
• Praktyczne projekty aplikacji opracowanych za pomoc¹ Visual C++ 2008
Nie zwlekaj – ju¿ dziœ wkrocz w magiczny œwiat programowania
z wykorzystaniem Visual C++ 2008!
Spis tre ci
Co znajdziesz w tej ksiñ ce? ............................................................. 9
Rozdziaä 1. Podstawy rodowiska Visual C++ 2008 .......................................... 11
J zyk C++ a .NET Framework ....................................................................................... 11
Opis rodowiska ............................................................................................................. 12
Pobieranie i instalacja rodowiska .................................................................................. 12
Gáówne okno VC++ 2008 ............................................................................................... 13
Tworzenie nowej aplikacji w VC++ 2008 ........................................................................ 13
Wygl d rodowiska w trybie budowy aplikacji .............................................................. 16
Struktura projektu ........................................................................................................... 17
Klasa okna gáównego ...................................................................................................... 18
Rozdziaä 2. Podstawowe elementy aplikacji ...................................................... 21
Gáówne okno .................................................................................................................. 21
Przyciski ......................................................................................................................... 26
Etykiety .......................................................................................................................... 27
Pola tekstowe .................................................................................................................. 29
Wprowadzanie danych do aplikacji za pomoc pól tekstowych ..................................... 31
Wprowadzanie danych z konwersj typu ....................................................................... 32
Wy wietlanie warto ci zmiennych ................................................................................. 34
Pole tekstowe z mask formatu danych .......................................................................... 35
Pola wyboru, przyciski opcji, kontenery grupuj ce ........................................................ 37
Rozdziaä 3. Menu i paski narzödzi ..................................................................... 41
Rodzaje menu ................................................................................................................. 41
Komponent MenuStrip ................................................................................................... 41
Menu podr czne ............................................................................................................. 47
Skróty klawiaturowe w menu ......................................................................................... 49
Paski narz dzi ................................................................................................................. 51
Rozdziaä 4. Tablice, uchwyty i dynamiczne tworzenie obiektów .......................... 55
Tablice ............................................................................................................................ 55
Uchwyty ......................................................................................................................... 59
Dynamiczne tworzenie obiektów — operator gcnew ..................................................... 60
Dynamiczna deklaracja tablic ......................................................................................... 61
4
Microsoft Visual C++ 2008. Praktyczne przykäady
Rozdziaä 5. Komunikacja aplikacji z plikami ...................................................... 63
Pliki jako ródáo danych ................................................................................................. 63
Wyszukiwanie plików .................................................................................................... 64
Odczyt wáasno ci plików i folderów .............................................................................. 65
Odczyt danych z plików tekstowych .............................................................................. 66
Zapisywanie tekstu do pliku ........................................................................................... 69
Zapis danych do plików binarnych ................................................................................. 71
Odczyt z plików binarnych ............................................................................................. 72
Rozdziaä 6. Okna dialogowe ............................................................................. 75
Okno typu MessageBox .................................................................................................. 75
Okno dialogowe otwarcia pliku ...................................................................................... 77
Okno zapisu pliku ........................................................................................................... 79
Okno wyboru koloru ....................................................................................................... 80
Wybór czcionki .............................................................................................................. 81
Rozdziaä 7. Mo liwo ci edycji tekstu w komponencie TextBox .......................... 83
Wáa ciwo ci pola TextBox ............................................................................................. 83
Kopiowanie i wklejanie tekstu ze schowka .................................................................... 85
Wyszukiwanie znaków w tek cie ................................................................................... 86
Wstawianie tekstu mi dzy istniej ce linie ...................................................................... 87
Wprowadzanie danych do aplikacji ................................................................................ 88
Prosta konwersja typów — klasa Convert ...................................................................... 88
Konwersja ze zmian formatu danych ............................................................................ 89
Konwersja liczby na áa cuch znakowy ........................................................................... 92
Rozdziaä 8. Komponent tabeli DataGridView ...................................................... 95
Podstawowe wáa ciwo ci komponentu DataGridView ................................................... 95
Zmiana wygl du tabeli ................................................................................................... 98
Dopasowanie wymiarów komórek tabeli do wy wietlanego tekstu .............................. 101
Odczytywanie danych z komórek tabeli ....................................................................... 102
Zmiana liczby komórek podczas dziaáania aplikacji .................................................... 106
Tabela DataGridView z komórkami ró nych typów .................................................... 110
Przyciski w komórkach — DataGridViewButtonCell .................................................. 113
Komórki z polami wyboru — DataGridViewCheckBoxCell ....................................... 114
Grafika w tabeli — komórka DataGridViewImageCell ............................................... 116
Komórka z list rozwijan — DataGridViewComboBoxCell ...................................... 117
Odno niki internetowe w komórkach — DataGridViewLinkCell ................................ 119
Rozdziaä 9. Metody zwiñzane z czasem — komponent Timer ........................... 123
Czas systemowy ........................................................................................................... 123
Komponent Timer ........................................................................................................ 125
Rozdziaä 10. Grafika w aplikacjach Visual C++ .................................................. 127
Obiekt Graphics — kartka do rysowania ...................................................................... 127
Pióro Pen ...................................................................................................................... 133
P dzle zwykáe i teksturowane ....................................................................................... 135
Rysowanie pojedynczych punktów — obiekt Bitmap .................................................. 137
Rysowanie trwaáe — od wie anie rysunku .................................................................. 138
Rozdziaä 11. Podstawy aplikacji wielowñtkowych ............................................. 141
W tki ............................................................................................................................ 141
Komunikacja z komponentami z innych w tków — przekazywanie parametrów ........ 143
Przekazywanie parametrów do metody w tku .............................................................. 145
Klasa w tku — przekazywanie parametrów z kontrol typu ........................................ 146
Komponent BackgroundWorker ................................................................................... 148
Spis tre ci
5
Rozdziaä 12. Poäñczenie aplikacji z sieciñ internet ............................................. 153
Komponent WebBrowser ............................................................................................. 153
Przetwarzanie stron WWW — obiekt HtmlDocument ................................................. 156
Protokóá FTP ................................................................................................................ 160
Pobieranie zawarto ci katalogu z serwera FTP ............................................................. 161
Pobieranie plików przez FTP ........................................................................................ 162
Wysyáanie pliku na serwer FTP .................................................................................... 164
Rozdziaä 13. Dynamiczne tworzenie okien i komponentów ................................. 167
Wy wietlanie okien — klasa Form ............................................................................... 167
Komponenty w oknie tworzonym dynamicznie ........................................................... 169
Przesyáanie danych z okien dialogowych ..................................................................... 170
Okno tytuáowe aplikacji ................................................................................................ 171
Obsáuga zdarze dla komponentów tworzonych dynamicznie ..................................... 172
Aplikacja zabezpieczona hasáem .................................................................................. 173
Rozdziaä 14. Struktura programów C++ i C++/CLI ............................................ 175
Programy korzystaj ce z konsoli w VC++ 2008 .......................................................... 175
Ogólna postaü programu pisanego w C++ .................................................................... 176
Dyrektywy .................................................................................................................... 177
Dyrektywa #include ............................................................................................. 177
Dyrektywa #define ............................................................................................... 178
Dyrektywa #if — kompilacja warunkowa ........................................................... 178
Typy zmiennych ........................................................................................................... 178
Zmienne typu int .................................................................................................. 178
Zmienne typu float ............................................................................................... 179
Typ double ........................................................................................................... 179
Typ char ............................................................................................................... 179
Modyfikatory typów ............................................................................................ 179
Rzutowanie (konwersja) typów ........................................................................... 179
Typ wyliczeniowy ................................................................................................ 180
Operatory ...................................................................................................................... 180
Zapis danych do plików i odczyt z nich za pomoc operatorów << i >> ............. 182
Wska niki ..................................................................................................................... 184
Tablice .......................................................................................................................... 184
Operatory new i delete .................................................................................................. 185
Instrukcje ...................................................................................................................... 186
Instrukcje warunkowe .......................................................................................... 186
Instrukcje iteracji ................................................................................................. 187
Funkcje ......................................................................................................................... 188
Przeci anie funkcji ............................................................................................. 189
Niejednoznaczno ü .............................................................................................. 189
Przekazywanie argumentów przez warto ü i adres .............................................. 190
Wska niki do funkcji ........................................................................................... 191
Funkcja main() ............................................................................................................. 192
Przekazywanie parametrów do funkcji main() ..................................................... 193
Struktury i unie ............................................................................................................. 195
Struktury .............................................................................................................. 195
Klasy ............................................................................................................................. 196
Konstruktory i destruktory ................................................................................... 199
Przeci anie konstruktorów ................................................................................. 201
Przeci anie operatorów ...................................................................................... 202
Statyczne metody i pola klasy .............................................................................. 203
Wska nik zwrotny this ......................................................................................... 204
Dziedziczenie ....................................................................................................... 205
6
Microsoft Visual C++ 2008. Praktyczne przykäady
Wáasne kontrolki dziedzicz ce po standardowych ....................................................... 208
Przestrzenie nazw ......................................................................................................... 211
Wyj tki ......................................................................................................................... 212
Aplikacje, aplikacje ...................................................................................................... 215
Rozdziaä 15. Prosty edytor tekstu .................................................................... 217
Opis .............................................................................................................................. 217
Gáówne okno ................................................................................................................ 217
Budowa interfejsu u ytkownika ................................................................................... 219
Otwieranie pliku z dysku .............................................................................................. 223
Zapisanie pliku tekstowego .......................................................................................... 226
Obsáuga schowka .......................................................................................................... 227
Cofanie komend (Undo) ...................................................................................... 228
Wyci cie tekstu do umieszczenia w schowku ...................................................... 228
Aby skopiowaü tekst do schowka ........................................................................ 228
Aby wkleiü tekst ze schowka ............................................................................... 229
Test ............................................................................................................................... 229
Rozdziaä 16. Program do rysowania .................................................................. 231
Opis .............................................................................................................................. 231
Budowa interfejsu u ytkownika ................................................................................... 231
Wczytywanie pliku graficznego z dysku ...................................................................... 233
Wy wietlanie grafiki w oknie ....................................................................................... 234
Rysowanie w oknie za pomoc myszy ......................................................................... 236
Zmiana koloru linii ....................................................................................................... 239
Zapis pliku graficznego na dysku ................................................................................. 240
Test ............................................................................................................................... 243
Rozdziaä 17. Figury Voronoi .............................................................................. 245
Opis .............................................................................................................................. 245
Interfejs u ytkownika ................................................................................................... 246
Struktura projektu C++/CLI ......................................................................................... 246
Wyznaczanie odlegáo ci mi dzy punktami ................................................................... 248
Rysowanie figur ........................................................................................................... 248
Obsáuga programu ........................................................................................................ 251
Test ............................................................................................................................... 252
Rozdziaä 18. Automat komórkowy .................................................................... 253
Opis .............................................................................................................................. 253
Interfejs u ytkownika ................................................................................................... 254
Inicjalizacja planszy ..................................................................................................... 256
Zaznaczanie pól w siatce .............................................................................................. 257
Krok w trybie Gra w ycie ............................................................................................ 258
Krok w trybie Seeds ..................................................................................................... 260
Kroki w trybie automatycznym .................................................................................... 261
Obsáuga programu ........................................................................................................ 262
Inne ciekawe ukáady do Gry w ycie ............................................................................ 262
Oscylatory ............................................................................................................ 263
Obiekty lataj ce ................................................................................................... 264
Test ............................................................................................................................... 266
Rozdziaä 19. Wie e Hanoi ................................................................................. 267
Opis .............................................................................................................................. 267
Interfejs u ytkownika ................................................................................................... 268
Deklaracja zmiennych klasy Form1 ............................................................................. 270
Zgłoś jeśli naruszono regulamin