C++. Wykorzystaj potęgę aplikacji graficznych - ebook
C++. Wykorzystaj potęgę aplikacji graficznych - ebook
Napisz wieloplatformowe programy w C++
- Jak korzystać z bibliotek wxWidgets oraz Qt?
- W jaki sposób implementować obsługę zdarzeń w aplikacjach?
- Jak budować aplikacje sieciowe i bazodanowe?
Okres dominacji jednego systemu operacyjnego i przeznaczonych dla niego rozwiązań powoli odchodzi do historii. Fenomen popularności różnych dystrybucji Linuksa i coraz mocniejsza pozycja komputerów Mac sprawiają, że wiele firm produkujących oprogramowanie decyduje się na tworzenie rozwiązań wieloplatformowych. W przypadku ogromnych korporacji stworzenie zespołów programistycznych pracujących równolegle nad kilkoma wersjami jednej aplikacji dla różnych systemów operacyjnych nie stanowi problemu, ale w mniejszych firmach jest to niemożliwe. Tu z pomocą przychodzą biblioteki pozwalające na tworzenie kodu źródłowego prawidłowo kompilującego się na każdej platformie, na której je zainstalowano.
Książka "C++. Wykorzystaj potęgę aplikacji graficznych" opisuje tworzenie oprogramowania z wykorzystaniem dwóch takich właśnie bibliotek - wxWidgets oraz Qt. Czytając ją, dowiesz się, jak wykorzystać język C++ i środowisko Dev-C++ do pisania programów, z których korzystać będą mogli użytkownicy systemu Windows, Linuksa i Mac OS. Nauczysz się stosować kontrolki i komponenty, budować menu i interfejsy użytkownika, obsługiwać zdarzenia i implementować operacje graficzne. Przeczytasz także o aplikacjach bazodanowych i sieciowych. Każde z zagadnień omówiono zarówno w kontekście biblioteki wxWidgets, jak i biblioteki Qt, dzięki czemu poznasz dwie metody rozwiązywania tych samych zadań programistycznych - by wybrać sobie tę, która bardziej Ci odpowiada.
- Instalacja środowiska programistycznego i bibliotek
- Struktura aplikacji i podstawowe komponenty
- Stosowanie komponentów
- Obsługa zdarzeń myszy i klawiatury
- Budowanie menu aplikacji
- Komunikacja sieciowa
- Operacje graficzne
- Połączenia z bazami danych
- Drukowanie z poziomu aplikacji
Dzięki tej książce stworzysz aplikacje, które docenią użytkownicy wszystkich systemów operacyjnych.
Spis treści
Rozdział 1. Opis i instalacja bibliotek (9)
- Wstęp (9)
- Biblioteka wxWidgets (9)
- Instalacja środowiska wxDev-C++ (10)
- Elementy wxDev-C++ (10)
- Tworzenie projektu aplikacji w wxDev-C++ (11)
- Biblioteka Qt (12)
- Instalacja Dev-C++ (12)
- Instalacja bibliotek Qt (12)
- Konfiguracja Dev-C++ do współpracy z Qt (13)
- Tworzenie szablonu projektu aplikacji Qt (15)
Rozdział 2. Struktura aplikacji wxWidgets (19)
- Części składowe aplikacji (19)
- Zgodność ze standardem Unicode (22)
- Tworzenie kontrolek (23)
- Zdarzenia (24)
- Wizualne tworzenie aplikacji w środowisku wxDev-C++ (26)
- Struktura projektu wykorzystywana podczas budowy aplikacji za pomocą IDE (27)
- Nazwy parametrów użyte w książce (28)
- Test (28)
Rozdział 3. Podstawowe komponenty aplikacji (31)
- Okno wxFrame (31)
- Style okna (32)
- Ikona w oknie aplikacji (33)
- Czcionki w aplikacji (34)
- Panele wxPanel (35)
- Przyciski wxButton (36)
- Etykieta wxStaticText (38)
- Pola wyboru i przyciski opcji (40)
- Komponent wprowadzania i edycji tekstu wxTextCtrl (44)
- Test (48)
Rozdział 4. Więcej o zdarzeniach (49)
- Rodzaje zdarzeń (49)
- Dynamiczna obsługa zdarzeń (49)
- Rozpoznawanie obiektu generującego zdarzenie w metodzie obsługi (53)
- Obsługa zdarzeń myszy (56)
- Obsługa zdarzeń klawiatury (58)
- Test (61)
Rozdział 5. Zastosowania menu (63)
- Podstawy menu (63)
- Obsługa menu za pomocą tabeli zdarzeń (66)
- Obsługa menu za pomocą metody Connect() (68)
- Tworzenie menu podczas działania aplikacji (70)
- Menu kontekstowe (73)
- Skróty klawiaturowe w opcjach menu (75)
- Paski narzędzi (77)
- Pasek statusu (81)
- Test (85)
Rozdział 6. Okna dialogowe (87)
- Okna komunikatów (87)
- Okno z możliwością wprowadzania danych (89)
- Zwykłe okno do wprowadzania tekstu (89)
- Okno hasła (90)
- Okna zapisu i otwarcia pliku (92)
- Okno wyboru czcionki (94)
- Paleta kolorów (96)
- Test (98)
Rozdział 7. Podstawy aplikacji sieciowych (101)
- Protokół FTP (101)
- Logowanie do serwera i wyświetlanie zawartości katalogu (101)
- Operacje na folderach i plikach (105)
- Pobieranie plików z serwera (107)
- Wysyłanie plików z dysku lokalnego (109)
- Protokół HTTP (111)
- Pobieranie stron Web (111)
- Wyświetlanie stron w postaci graficznej - komponent wxHtmlWindow (113)
- Prezentacja wyników działania aplikacji w postaci HTML (115)
- Komórki wxHtmlCell (118)
- Test (122)
Rozdział 8. Grafika (125)
- Mapy bitowe wxBitmap (125)
- Kontekst urządzenia - klasa wxDC (126)
- Rysowanie w oknie - kontekst wxClientDC (128)
- Obsługa zdarzenia Paint - kontekst wxPaintDC (132)
- Rysowanie w pamięci - wxMemoryDC (134)
- Kontekst ekranu - wxScreenDC (136)
- Pióro wxPen (138)
- Pędzel wxBrush (141)
- Podstawy obsługi biblioteki OpenGL w wxWidgets (143)
- Rysowanie obiektów trójwymiarowych (147)
- Animacje (149)
- Test (151)
Rozdział 9. Aplikacje baz danych (153)
- Bazy danych a wxWidgets (153)
- Instalacja PostgreSQL (153)
- Inicjalizacja bazy (155)
- Organizacja i typy danych w bazach PostgreSQL (156)
- Język SQL (158)
- Połączenie aplikacji wxWidgets z bazą danych (158)
- Dodawanie tabel do bazy (161)
- Zapis danych do tabeli (165)
- Wyszukiwanie i odczyt danych z tabeli (167)
- Zmiana wartości w rekordach (171)
- Test (172)
Rozdział 10. Drukowanie w wxWidgets (175)
- Drukowanie na różnych platformach (175)
- Drukowanie tekstu (175)
- Drukowanie tekstu z formatowaniem (178)
- Podgląd wydruku tekstu (180)
- Drukowanie grafiki (181)
- Obiekt wydruku wxPrintout (181)
- Urządzenie drukarki - klasa wxPrinter (183)
- Okno podglądu drukowania grafiki (185)
- Skalowanie wydruku graficznego (187)
- Test (191)
Rozdział 11. Elementy aplikacji wielowątkowych (195)
- Wielowątkowość (195)
- Sekcje krytyczne (196)
- Wzajemne wykluczenia (196)
- Semafory (196)
- Klasa wxThread (196)
- Sekcja krytyczna - wxCriticalSection (198)
- Wykluczenie wxMutex (199)
- Semafor wxSemaphore (199)
- Prosta aplikacja z kilkoma wątkami (200)
- Przekazywanie danych z wątku poprzez zdarzenia (204)
- Ograniczenie ilości wątków za pomocą semafora (205)
- Test (207)
Rozdział 12. Struktura aplikacji Qt (209)
- Korzystamy z szablonu (209)
- Pierwszy program krok po kroku (211)
- Wyświetlamy polskie znaki (212)
- Podstawy hierarchii elementów interfejsu użytkownika (214)
- Tworzenie własnej klasy okna (216)
- Qt Designer (218)
- Integracja Qt Designer i Dev-C++ (221)
- Wykorzystanie formularzy w programach (222)
- Test (228)
Rozdział 13. Podstawowe komponenty aplikacji (229)
- Klasa QMainWindow (229)
- Rozpoczynamy budowę edytora tekstu (229)
- Rodzaje okien (232)
- Ikona aplikacji i zasoby (234)
- Menu (236)
- Klawisze skrótu (238)
- Komunikaty na pasku statusu (239)
- Pasek statusu (241)
- Pasek narzędzi (242)
- Wygląd paska narzędzi (242)
- Dodajemy własne gniazda (244)
- Edytor tekstu - formularz w Qt Designer (247)
- Klasa QString (250)
- Test (253)
Rozdział 14. Więcej o zdarzeniach (255)
- Sygnały i gniazda (255)
- Metaobiekty (255)
- Definiowanie gniazd (256)
- Definiowanie oraz emitowanie sygnałów (257)
- Kompilator MOC (257)
- Definiowanie połączeń (258)
- Usuwanie połączeń (260)
- Dynamiczna obsługa połączeń (260)
- Program przykładowy (261)
- Obsługa zdarzeń (262)
- Rodzaje zdarzeń (263)
- Informacje przekazywane przy zdarzeniach (263)
- Selektywna obsługa zdarzeń (267)
- Test (269)
Rozdział 15. Zastosowania menu (271)
- Menu wielopoziomowe (271)
- Zmiana parametrów czcionki w menu (273)
- Właściwości elementów menu, sygnały i gniazda (276)
- Grupowanie elementów menu (279)
- Menu podręczne programu (282)
- Dynamiczne tworzenie elementów menu (284)
- Test (285)
Rozdział 16. Okna dialogowe (287)
- Okna komunikatów (287)
- Okna pobierania danych (296)
- Okna narzędziowe (299)
- Okno wyboru koloru (300)
- Okno wyboru czcionki (302)
- Obsługa plików i folderów (303)
- Test (306)
Rozdział 17. Podstawy aplikacji sieciowych (307)
- Obsługa protokółu FTP (307)
- Operacje na serwerze FTP (307)
- Sygnały klasy QFtp (309)
- Adresy zasobów internetowych (309)
- Program przykładowy (311)
- Obsługa protokółu HTTP (319)
- Operacje na serwerze HTTP (319)
- Sygnały klasy QHttp (321)
- Program przykładowy (321)
- Test (326)
Rozdział 18. Grafika (329)
- System graficzny w bibliotece Qt (329)
- Układ współrzędnych i rasteryzacja prymitywów (330)
- Podstawowe zasady rysowania (332)
- Obsługa plików graficznych (332)
- Parametry pióra (339)
- Parametry pędzla (346)
- Prymitywy graficzne (348)
- Rysowanie napisów (350)
- Jakość renderingu (353)
- OpenGL (354)
- SVG (359)
- Test (364)
Rozdział 19. Wykorzystanie komponentów baz danych (365)
- Bazy danych w bibliotece Qt (365)
- Obsługiwane bazy (365)
- Instalacja i konfiguracja bazy danych Firebird 2.0 (366)
- Instalacja (366)
- Kompilacja sterownika (367)
- Utworzenie bazy (368)
- Połączenie z bazą danych (369)
- Obsługa błędów (370)
- Tworzenie tabel (372)
- Podstawowe elementy języka SQL (372)
- Wybrane typy danych (372)
- Obsługa zapytań (372)
- Dodawanie danych do tabel (375)
- Wyszukiwanie danych (376)
- Modyfikacja i usuwanie danych (380)
- Test (389)
Rozdział 20. Drukowanie pod Qt (391)
- Urządzenie graficzne do druku (391)
- Klasa QPrinter (391)
- Układ współrzędnych (392)
- Podział na strony (393)
- Okna dialogowe obsługujące drukowanie (393)
- Drukowanie tekstu (394)
- Drukowanie rysunków (395)
- Drukowanie do plików PDF (397)
- Podgląd wydruku (399)
- Test (405)
Rozdział 21. Programowanie wielowątkowe (407)
- Podstawowe zagadnienia programowania wielowątkowego (407)
- Wątki w bibliotece Qt (408)
- Uruchamianie i kontrola wątków (409)
- Przerwanie i zatrzymanie wątku (410)
- Sygnały klasy QThread (410)
- Funkcja oczekująca (411)
- Synchronizacja wątków (411)
- Muteksy (413)
- Semafory (414)
- Wątki w aplikacji GUI (415)
- Test (422)
Dodatek A Odpowiedzi do testów (423)
Skorowidz (425)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-246-4502-2 |
Rozmiar pliku: | 4,5 MB |