okladka
W niniejszej książce Czytelnik znajdzie jasne, przejrzyste sposoby wykorzystania środowiska Visual C++, wska- zówki dotyczące programowania Windows oraz wiele przetestowanych, łatwych do odtworzenia przykładów, dzięki którym nabierze praktycznej umiejętności programowania w Visual C++. Każdy rozdział koncentruje się na praktycznym zagadnieniu, można więc czytać tę książkę "od deski do deski" lub od razu przejść do interesującego tematu. Do omawianych tematów należą:
  • Tworzenie okien dialogowych
  • Wykorzystanie operacji graficznych
  • Stosowanie wielu widoków
  • Praca z suwakami i dzielonymi oknami
  • Stosowanie przycisków opcji, przycisków radiowych oraz list
  • Serializacja obiektów C++
  • Pisanie programów internetowych
  • Obsługa plików
  • Dostęp do baz danych
  • Tworzenie kontrolek ActiveX
  • Debuggowanie aplikacji

Wprowadzenie (11)
  • Co znajdziesz w tej książce? (12)
  • Czego będziesz potrzebował (13)
Rozdział 1. Witamy w C++ (15)
  • Przegląd Visual C++ (16)
  • Pierwszy działający przykład (17)
    • Obszary robocze i projekty (18)
    • Tworzenie pliku kodu źródłowego (20)
    • Dodawanie do programu kodu języka C++ (22)
    • Czym są strumienie w C++? (22)
    • Uruchamianie programu (23)
  • Wszystko o klasach i obiektach języka C++ (25)
    • Czym jest obiekt? (25)
    • Czym jest klasa? (26)
  • Pierwszy przykład korzystający z klas i obiektów (27)
    • Czym są modyfikatory dostępu? (28)
    • Inicjowanie zmiennych klasy przy pomocy konstruktorów (30)
    • Korzystanie z klasy DataClass (31)
  • Prawdziwy przykład w C++: SchoolRoom (35)
    • Destruktory (36)
  • Przechowywanie, pobieranie i uśrednianie danych (37)
    • Przechowywanie danych metodą AddScore() (38)
    • Pobieranie danych z użyciem funkcji GetScore() (39)
    • Uśrednianie danych funkcją AverageScore() (40)
    • Wykorzystanie klasy SchoolClass (42)
  • Czym jest dziedziczenie i przesłanianie? (46)
    • Wyprowadzanie nowej klasy: dziedziczenie (48)
    • Zmiana metody: przesłanianie (48)
  • Przeciążanie funkcji (50)
  • Czy już potrafisz? (53)
Rozdział 2. Rozpoczynamy pracę w pakiecie Visual C++ (55)
  • Pierwszy prawdziwy program dla Windows (56)
  • Elementy składowe programu w Visual C++ (63)
    • Obiekt aplikacji (63)
    • Obiekt głównego okna (63)
    • Obiekt widoku (63)
    • Obiekt dokumentu (63)
  • Wyświetlanie komunikatu powitalnego (64)
  • Analiza obiektu aplikacji (66)
  • Analiza obiektu głównego okna (75)
  • Analiza obiektu widoku (80)
    • Programowanie zorientowane na zdarzenia (80)
    • Wyświetlenie komunikatu w widoku (80)
    • Czym jest kontekst urządzenia? (82)
  • Analiza obiektu dokumentu (90)
    • Pobieranie danych z wnętrza widoku (91)
    • Zapisywanie danych na dysk (92)
  • Czy już potrafisz? (96)
Rozdział 3. Odczytywanie znaków z klawiatury (97)
  • Korzystanie z klawiatury (98)
    • Przygotowanie miejsca na odczytane znaki (99)
    • Odczytywanie znaków (99)
    • Zapamiętywanie znaków w obiekcie dokumentu (102)
    • Wyświetlanie naszego tekstu (103)
  • Centrowanie tekstu w oknie (108)
    • Wyznaczanie rozmiarów okna (110)
    • Wyznaczanie rozmiarów wyświetlanego tekstu (111)
  • Czy już potrafisz? (117)
Rozdział 4. Obsługa myszki w Visual C++ (119)
  • Umieszczanie w oknie punktu wstawiania (120)
    • Wyznaczanie wymiarów znaków na podstawie metryki tekstu (122)
    • Ustalanie pozycji punktu wstawiania (124)
    • Ukrywanie i wyświetlanie punktu wstawiania w momencie utraty lub zyskania ogniska wejściowego
    (129)
  • Korzystanie z myszy (134)
    • Korzystanie z metod ClassWizarda związanych z myszką (135)
    • Wyświetlanie tekstu w miejscu wskazanym myszką (138)
  • Czy już potrafisz? (146)
Rozdział 5. Tworzenie menu, przycisków paska narzędzi i zachęt paska stanu (147)
  • Pierwszy przykład korzystający z menu (148)
    • Praca z edytorem menu (149)
    • Dodawanie nowego elementu menu (150)
    • Wiązanie poleceń menu z kodem programu (150)
  • Tworzenie pełnego menu (157)
    • Dodawanie klawiszy skrótów (159)
    • Dodawanie komunikatów paska narzędzi (160)
    • Dodawanie podmenu do menu Demo (160)
    • Dodawanie akceleratorów (161)
    • Dodawanie przycisków do paska narzędzi (162)
    • Wyłączanie pozycji menu (164)
    • Zaznaczanie elementów menu (165)
    • Dodawanie kodu do elementów podmenu (166)
  • Czy już potrafisz? (174)
Rozdział 6. Okna dialogowe: korzystanie z przycisków i pól tekstowych (175)
  • Tworzenie pierwszego okna dialogowego (176)
    • Tworzenie okna dialogowego (178)
    • Dodawanie elementów sterujących do okna dialogowego (180)
    • Zmiana nazw elementów sterujących (181)
    • Tworzenie klasy okna dialogowego (182)
    • Łączenie metod z elementami sterującymi okna dialogowego (184)
    • Łączenie zmiennych z elementami sterującymi (185)
    • Przesłanianie przycisku OK (188)
    • Wyświetlanie okna dialogowego (189)
  • Użycie okna dialogowego jako głównego okna programu (199)
  • Czy już potrafisz? (210)
Rozdział 7. Tworzenie przycisków opcji i przycisków radiowych (211)
  • Przyciski opcji (212)
    • Dodawanie przycisków opcji do programu (214)
    • Wyrównywanie elementów w edytorze dialogów (214)
    • Łączenie przycisków opcji z kodem (215)
  • Przyciski radiowe (224)
    • Łączenie przycisków radiowych z kodem (226)
    • Koordynacja przycisków radiowych (226)
  • Współpraca przycisków opcji i przycisków radiowych (232)
    • Korzystanie z prostokątów grup (235)
    • Dodawanie zmiennych składowych do przycisków opcji (236)
  • Czy już potrafisz? (245)
Rozdział 8. Listy, rozwijane listy i suwaki (247)
  • Obsługa list (248)
    • Korzystanie z etykiet (250)
    • Dodawanie obiektu składowego do listy (250)
    • Inicjacja danych na liście (253)
    • Obsługa dwukrotnego kliknięcia na elemencie listy (254)
    • Wyznaczenie elementu listy wybranego przez użytkownika (255)
  • Rozwijane listy (261)
    • Inicjowanie rozwijanej listy (263)
    • Wyznaczanie elementu wybranego przez użytkownika (266)
  • Obsługa suwaków (272)
    • Inicjowanie suwaka (275)
    • Obsługa zdarzeń pochodzących od suwaka (276)
    • Wyświetlanie liczb w polach tekstowych (278)
  • Czy już potrafisz? (284)
Rozdział 9. Grafika - kompletny program graficzny obsługiwany myszką (285)
  • Projektowanie programu graficznego (286)
  • Tworzenie wygodnego interfejsu użytkownika (287)
    • Ustawianie znaczników programu (289)
    • Tworzenie menu Narzędzia i przycisków paska narzędzi (291)
    • Łączenie znaczników z figurami (293)
    • Włączanie znaczków w menu (294)
    • Obsługa wciśnięcia klawisza myszki (294)
  • Rysowanie odcinków (295)
  • Rysowanie prostokątów (298)
  • Rysowanie elips i okręgów (300)
  • Wypełnianie figur kolorem (300)
  • Rysowanie myszką dowolnych kształtów (302)
  • Zmiana kształtu kursora myszy (304)
  • Rozciąganie figur (305)
    • Co to są operacje rastrowe? (306)
  • Odświeżanie zawartości okna (310)
    • Rejestrowanie operacji graficznych w metapliku (311)
    • Odtwarzanie zawartości metapliku (312)
  • Zapisywanie plików graficznych (314)
  • Otwieranie plików graficznych (315)
  • Tworzenie nowego dokumentu (316)
    • Program graficzny jest gotowy (317)
  • Czy już potrafisz? (327)
Rozdział 10. Efektywna obsługa plików (329)
  • O co chodzi w serializacji? (330)
    • Tworzenie programu (330)
    • Serializacja obiektu StringData (331)
  • Serializowanie własnych obiektów (339)
    • Dodawanie serializacji do klasy (341)
  • Codzienna obsługa plików (351)
    • Podział pliku na rekordy (352)
    • Inicjowanie danych programu (353)
    • Zapis danych do pliku (355)
    • Odczyt danych z pliku (357)
    • Przesuwanie wskaźnika pliku (358)
  • Czy już potrafisz? (366)
Rozdział 11. Jednoczesne korzystanie z wielu dokumentów i wielu widoków (367)
  • Pierwszy przykład korzystający z kilku dokumentów i kilku widoków (368)
    • Czym różni się program MDI od SDI? (371)
    • Dwa typy okien, dwa typy menu (373)
    • Odczytywanie znaków wprowadzanych z klawiatury (374)
    • Korzystanie ze wskazówek aktualizacji (376)
    • Znacznik modyfikacji dokumentu (376)
  • Niezależne przewijanie niezależnych widoków (381)
    • Umożliwienie przewijania widoku (383)
    • Wyznaczanie rozmiarów dokumentu (384)
    • Dostosowywanie przesuniętego kontekstu urządzenia (386)
  • Wykorzystanie pola tekstowego jako widoku (394)
    • Sięganie do wewnętrznych danych programu (395)
  • Czy już potrafisz? (400)
Rozdział 12. Tworzenie programów Internetowych łącznie z przeglądarką sieci (401)
  • Tworzenie przeglądarki Sieci (402)
  • Łączenie się z Internetem poprzez HTTP (409)
    • Ładowanie plików poprzez HTTP (412)
  • Wykorzystanie protokołu FTP (420)
    • Łączenie się z Internetem poprzez FTP (421)
  • Obsługa baz danych przy pomocy Visual C++ (430)
    • Projektowanie naszego programu (431)
    • Odwoływanie się do bieżącego rekordu (433)
  • Czy już potrafisz? (439)
Rozdział 13. Tworzenie kontrolek ActiveX (441)
  • Pierwsza kontrolka ActiveX (442)
    • Rysowanie kontrolki ActiveX (443)
    • Dodawanie metody obsługi do kontrolki ActiveX (445)
    • Testowanie kontrolki ActiveX (447)
    • Wykorzystanie kontrolki ActiveX w programie Visual C++ (448)
  • Tworzenie kontrolki ActiveX opartej na przycisku (456)
    • Dostosowywanie kontrolki Buttoner (457)
    • Dodawanie zdarzeń do kontrolek ActiveX (458)
    • Dodawanie właściwości do kontrolek ActiveX (459)
    • Dodawanie metod do kontrolek ActiveX (461)
    • Osadzanie kontrolki w innych programach (462)
    • Łączenie kontrolki ActiveX z kodem (464)
  • Czy już potrafisz? (476)
Rozdział 14. Debuggowanie programów napisanych w Visual C++ (477)
  • Błędny program (478)
    • Ustawianie punktu wstrzymania (482)
    • Wykonywanie programu do punktu wstrzymania (483)
  • Wykonywanie kodu krok po kroku (484)
  • Sprawdzanie wartości zmiennych podczas działania programu (486)
    • Okna Auto i Locals (486) sieci (401)
  • Czy już potrafisz? (490)
Skorowidz (491)