Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
64
3.pierwSzeokno
30MyFrame::MyFrame(constwxString&title)
31:wxFrame(NULL,wxID_ANY,title,wxDefaultPosition,wxSize(600,400))
32{
33
CenterOnScreen();
34}
Gotowe!TenkrótkikodtostandardowyprogramwxWidgets.Zawieraonrównieżpewneelementy,
zktórychdoskonalszychformbędzieszpewnieczęstokorzystać.Możeszgoodrazuskompilować
iuruchomić1.Powinieneśzobaczyćokienkopodobnedozaprezentowanegonarysunku3.1.
Rysunek3.1.Twójpierwszyprogram.NapierwszymplanieoknoprogramuutworzonegowMSWindows,nadrugim
-utworzonegowsystemieUbuntuLinux
Aterazzobacz,zczegoskładasięaplikacjawxWidgetsorazcosięstało,gdyuruchomiliśmynasz
pierwszyprogram.
PierwszaliniakodudołączaplikinagłówkowewxWidgetsdlakompilatorów,którewspierają
nagłówkiprekompilowane.Jeślinagłówkiprekompilowanenieobsługiwane,wliniitrzeciejwarun-
kowojestdołączanyplik,któryzkoleidołączadonaszegoprogramuwiększośćstandardowychplików
nagłówkowychwxWidgets.Zapamiętajdobrzesekwencję,ponieważoiledalszaczęśćprogramumoże
wyglądaćróżniewzależnościodstopniajegoskomplikowania,otyleteplikinagłówkowepowinieneś
dołączaćzawsze.Jeżelidobieżącegoprogramuchcesztakżedołączyćpliknagłówkowymain.h(zobacz
rozdz.2),powinieneśtozrobićwtejchwili.Musiszzapamiętać,żewszelkiegorodzajuplikinagłówkowe
aplikacjiwxWidgetsdołączamyzawszepoinstrukcjachwłączającychplikiwxprec.hlubwx.h.
Choćtakierozwiązanieniejestzbyteleganckie,wlinii6.umieściłemcelowoglobalnązmienną
przechowującąnazwęprogramu2.Zwróćuwagęnato,żejestonatypuwxString.Typtenjestpod-
stawowymkonteneremsłużącymdoprzechowywaniałańcuchówznakówwwxWidgets.Pracaze
standardowymiciągamiznakówC++możewymagaćstosowaniaróżnychkonwersji,októrychbędę
mówićwdalszychczęściachksiążki.Terazwystarczy,żezapamiętasz,żewxWidgetsprzechowuje
wszelkienapisywobiektachklasywxString.Zmiennazlinii6.zachwilęnamsięprzyda.
Tymczasemzwróćuwagęnalinieod8.do12.,wktórychznajdujesiędeklaracjaklasyreprezen-
tującejnasząaplikację-wceluzachowanialepszejczytelnościniechnosionanazwęMyApp.Nasza
1
WtymceluwciśnijklawiszF9,jeśliaktualniepracujeszwCode::Blocks.Jeślinatomiastkompilujeszaplikację
wVisualC++,użyjklawiszaF7,przyczymswójprogrambędzieszmusiałuruchomićręcznie.Wobuprzypadkach
możeszrównieżwybraćodpowiednieopcjewmenuBuild,dostępnewkażdymześrodowisk.
2
DobrepraktykiprogramistyczneC++nieidąwparzeznadmiernąufnościądozmiennychglobalnych,których
używaniemożesiępoprostuokazaćniebezpieczne.Niemniejjednakzasadnewydajemisięrozważenieumieszczenia
wszelkichdanychprogramuwjakiejśjednejstrukturze,zuwaginapóźniejsząłatwośćichedycji.Wyobraźsobie,że
musiszzmienićnumerwersjiprogramu,któryzamieściłeśwkilkumiejscachwkodzie.