C++ Wykorzystaj potege aplikacji graficznych.pdf
(
653 KB
)
Pobierz
C++. Wykorzystaj potęgę aplikacji graficznych
C++. Wykorzystaj potķgķ
Autor: Janusz Ganczarski,
Mariusz Owczarek
ISBN: 978-83-246-1473-8
Format: 158x235, stron: 448
Wydawnictwo Helion
ul. Koľciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Napisz wieloplatformowe programy w C++
¤
Jak korzystaě z bibliotek wxWidgets oraz Qt?
¤
W jaki sposb 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 komputerw 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 rwnolegle nad kilkoma wersjami jednej aplikacji dla rŃnych systemw
operacyjnych nie stanowi problemu, ale w mniejszych firmach jest to niemoŃliwe.
Tu z pomocĴ przychodzĴ biblioteki pozwalajĴce na tworzenie kodu łrdĀowego
prawidĀowo kompilujĴcego siķ na kaŃdej platformie, na ktrej je zainstalowano.
KsiĴŃka âC++. Wykorzystaj potķgķ aplikacji graficznychÒ opisuje tworzenie
oprogramowania z wykorzystaniem dwch takich wĀaľnie bibliotek Ï wxWidgets
oraz Qt. CzytajĴc jĴ, dowiesz siķ, jak wykorzystaě jķzyk C++ i ľrodowisko Dev-C++
do pisania programw, z ktrych 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ĺ
omwiono zarwno 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ķ, ktra bardziej Ci odpowiada.
¤
Instalacja ľrodowiska programistycznego i bibliotek
¤
Struktura aplikacji i podstawowe komponenty
¤
Stosowanie komponentw
¤
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,
ktre doceniĴ uŃytkownicy wszystkich systemw operacyjnych.
aplikacji graficznych
Spis treci
Rozdzia 1. Opis i instalacja bibliotek ................................................................. 9
Wstp ................................................................................................................................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
Czci skadowe 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 uyte w ksice ...............................................................................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. Wicej o zdarzeniach ...................................................................... 49
Rodzaje zdarze ..............................................................................................................49
Dynamiczna obsuga zdarze .........................................................................................49
Rozpoznawanie obiektu generujcego zdarzenie w metodzie obsugi ............................53
4
C++. Wykorzystaj potg aplikacji graficznych
Obsuga zdarze myszy ..................................................................................................56
Obsuga zdarze klawiatury ...........................................................................................58
Test .................................................................................................................................61
Rozdzia 5. Zastosowania menu ....................................................................... 63
Podstawy menu ...............................................................................................................63
Obsuga menu za pomoc tabeli zdarze ........................................................................66
Obsuga menu za pomoc metody Connect() .................................................................68
Tworzenie menu podczas dziaania aplikacji ..................................................................70
Menu kontekstowe ..........................................................................................................73
Skróty klawiaturowe w opcjach menu ............................................................................75
Paski narzdzi .................................................................................................................77
Pasek statusu ...................................................................................................................81
Test .................................................................................................................................85
Rozdzia 6. Okna dialogowe ............................................................................. 87
Okna komunikatów ........................................................................................................87
Okno z moliwoci wprowadzania danych ...................................................................89
Zwyke okno do wprowadzania tekstu .....................................................................89
Okno hasa ................................................................................................................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 wywietlanie zawartoci katalogu ...................................101
Operacje na folderach i plikach ..............................................................................105
Pobieranie plików z serwera ...................................................................................107
Wysyanie plików z dysku lokalnego .....................................................................109
Protokó HTTP .............................................................................................................111
Pobieranie stron Web .............................................................................................111
Wywietlanie stron w postaci graficznej — komponent wxHtmlWindow .............113
Prezentacja wyników dziaania aplikacji w postaci HTML ....................................115
Komórki wxHtmlCell .............................................................................................118
Test ...............................................................................................................................122
Rozdzia 8. Grafika ......................................................................................... 125
Mapy bitowe wxBitmap ...............................................................................................125
Kontekst urzdzenia — klasa wxDC ............................................................................126
Rysowanie w oknie — kontekst wxClientDC ..............................................................128
Obsuga zdarzenia Paint — kontekst wxPaintDC .........................................................132
Rysowanie w pamici — wxMemoryDC .....................................................................134
Kontekst ekranu — wxScreenDC .................................................................................136
Pióro wxPen .................................................................................................................138
Pdzel wxBrush ............................................................................................................141
Podstawy obsugi biblioteki OpenGL w wxWidgets ....................................................143
Rysowanie obiektów trójwymiarowych .................................................................147
Animacje ................................................................................................................149
Test ...............................................................................................................................151
Spis treci
5
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
Jzyk SQL ....................................................................................................................158
Poczenie aplikacji wxWidgets z baz danych ............................................................158
Dodawanie tabel do bazy ..............................................................................................161
Zapis danych do tabeli ..................................................................................................165
Wyszukiwanie i odczyt danych z tabeli ........................................................................167
Zmiana wartoci 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
Podgld wydruku tekstu .........................................................................................180
Drukowanie grafiki .......................................................................................................181
Obiekt wydruku wxPrintout ...................................................................................181
Urzdzenie drukarki — klasa wxPrinter .................................................................183
Okno podgldu drukowania grafiki ........................................................................185
Skalowanie wydruku graficznego ..........................................................................187
Test ...............................................................................................................................191
Rozdzia 11. Elementy aplikacji wielowtkowych .............................................. 195
Wielowtkowo ..........................................................................................................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 wtkami .............................................................................200
Przekazywanie danych z wtku poprzez zdarzenia ......................................................204
Ograniczenie iloci wtków za pomoc semafora ........................................................205
Test ...............................................................................................................................207
Rozdzia 12. Struktura aplikacji Qt ................................................................... 209
Korzystamy z szablonu .................................................................................................209
Pierwszy program krok po kroku ..................................................................................211
Wywietlamy polskie znaki ..........................................................................................212
Podstawy hierarchii elementów interfejsu uytkownika ...............................................214
Tworzenie wasnej klasy okna ......................................................................................216
Qt Designer ...................................................................................................................218
Integracja Qt Designer i Dev-C++ ................................................................................221
Wykorzystanie formularzy w programach ....................................................................222
Test ...............................................................................................................................228
6
C++. Wykorzystaj potg aplikacji graficznych
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 narzdzi ..............................................................................................................242
Wygld paska narzdzi ...........................................................................................242
Dodajemy wasne gniazda ............................................................................................244
Edytor tekstu — formularz w Qt Designer ...................................................................247
Klasa QString ...............................................................................................................250
Test ...............................................................................................................................253
Rozdzia 14. Wicej o zdarzeniach .................................................................... 255
Sygnay i gniazda .........................................................................................................255
Metaobiekty ............................................................................................................255
Definiowanie gniazd ..............................................................................................256
Definiowanie oraz emitowanie sygnaów ...............................................................257
Kompilator MOC ...................................................................................................257
Definiowanie pocze ...........................................................................................258
Usuwanie pocze .................................................................................................260
Dynamiczna obsuga pocze ...............................................................................260
Program przykadowy ............................................................................................261
Obsuga zdarze ...........................................................................................................262
Rodzaje zdarze .....................................................................................................263
Informacje przekazywane przy zdarzeniach ...........................................................263
Selektywna obsuga zdarze ...................................................................................267
Test ...............................................................................................................................269
Rozdzia 15. Zastosowania menu ..................................................................... 271
Menu wielopoziomowe ................................................................................................271
Zmiana parametrów czcionki w menu ..........................................................................273
Waciwoci elementów menu, sygnay i gniazda ........................................................276
Grupowanie elementów menu ......................................................................................279
Menu podrczne programu ...........................................................................................282
Dynamiczne tworzenie elementów menu .....................................................................284
Test ...............................................................................................................................285
Rozdzia 16. Okna dialogowe ........................................................................... 287
Okna komunikatów ......................................................................................................287
Okna pobierania danych ...............................................................................................296
Okna narzdziowe ........................................................................................................299
Okno wyboru koloru ..............................................................................................300
Okno wyboru czcionki ...........................................................................................302
Obsuga plików i folderów .....................................................................................303
Test ...............................................................................................................................306
Rozdzia 17. Podstawy aplikacji sieciowych ...................................................... 307
Obsuga protokóu FTP ................................................................................................307
Operacje na serwerze FTP ......................................................................................307
Sygnay klasy QFtp ................................................................................................309
Plik z chomika:
kronos78
Inne pliki z tego folderu:
Asembler dla procesorow Intel Vademecum profesjonalisty.pdf
(400 KB)
Asembler cwiczenia praktyczne.pdf
(358 KB)
Architektura systemow zarzadzania przedsiebiorstwem Wzorce projektowe.pdf
(829 KB)
Architektura oprogramowania Metody oceny oraz analiza przypadkow.pdf
(429 KB)
Aplikacje w Visual C++ 2005 Przyklady.pdf
(296 KB)
Inne foldery tego chomika:
!!!!!!!!ze słowackiego radia, niektore opisanie, inne nie
# - Wzory CV
▶ Porady remontowo - budowlane
▶ Remont domu - poradnik
• AGD - kody błędów pralek automatycznych
Zgłoś jeśli
naruszono regulamin