Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
3.2.SzczegóŁYgŁównegooknaprogramu
67
wxWindow*parent-jesttoargumentzawierającywskaźnikdoobiekturodzica.Wprzy-
padkuoknagłównegozwyklezawierapustywskaźnik.Wdotychczasowejpraktyceprogramistów
wxWidgetszwyklenadajemusięwartośćNULL.Możesięjednakzdarzyć,żeinneoknaprogramu
realizującejakieśzadaniamogąbyćobiektamiklasywxFrameiwówczaskoniecznebędzieokre-
ślenieoknarodzica(np.pokliknięciuprzyciskuwokniegłównymprogramumawyświetlićsię
inneoknonarzędziowe,wktórymmaszwykonaćjakieśoperacje-wtakimprzypadkurodzicem
dlaoknanarzędziowegobędzieoknogłówneprogramu).Wartoprzytymzapamiętać,żeklasa
wxWindowjestklasąbazowądlawszystkichokienwyświetlanychnaekraniemonitora-także
dlawxFrame.
wxWindowIDid-tenargumentprzechowujeidentyfikatorokna,którymożezostaćwykorzy-
stanydorozpoznaniaiobsługizdarzeńgenerowanychprzezobiektokna(aleniepowiązanychznim
obiektówkontrolek!).Identyfikatorjestliczbącałkowitą(wxWindowIDjestaliasemwbudowanego
typuint),zwyklereprezentowanąprzeznnazwę”określonąjakostaławartośćtypuwyliczeniowego
(jaknp.wxID–ANYrówne-1,októrymbyłamowawpoprzednimpodrozdziale).Owykorzystaniu
istniejącychidefiniowaniunowychwartościidentyfikatorówpiszęwrozdziale4.
constwxString&title-zapomocątegoargumentuinformujemykonstruktor,jakibędzietytuł
naszegookna.TytułjestzapisanywformiełańcuchaznakówwxString.
wxPoint&pos=wxDefaultPosition-argumentposokreślapozycjęoknaprogramunaekranie
monitora.WspółrzędneoknasąokreślanezapomocąobiektuklasywxPoint(x,y),gdziexiytowarto-
ściwyrażonewpikselach.PunktowspółrzędnychwxPoint(0,0)znajdujesięwlewymgórnymrogu
ekranumonitora.WartośćwxDefaultPosition,jakajestdomyślnieprzypisanadoargumentu,oznacza,
żewspółrzędneoknazostanązainicjowanezwartościamiwxPoint(-1,-1).Wtakimprzypadkudobrze
jestokreślićpołożenieoknazapomocąjednejzdostępnychfunkcji,októrychmówięprzyokazji
odkrywaniatajnikówmodyfikowaniakonstruktorawkolejnympunkcie.
constwxSize&size=wxDefaultSize-argumentsizezawierainformacjęowielkościoknapro-
gramuwyrażonejwpikselach.WielkośćoknajestreprezentowanaprzezobiekttypuwxSize,którego
domyślnykonstruktorprzyjmujedwaargumenty:szerokośćiwysokośćokna.Pozostawieniewarto-
ścidomyślnejwxDefaultSizebędzieoznaczaćzainicjowaniewielkościoknawartościąwxSize(-1,-1).
Wtakimprzypadkurozmiaroknamożebyćdeterminowanywielomaczynnikamiimetodami,októ-
rychopowiemwdrugiejczęściksiążki.
longstyle=wxDEFAULT_FRAME_STYLE-ciekawyargument,któremuwartopoświęcićtro-
chęuwagi.Określaontzw.stylokna,adokładnie-sposóbwyświetlaniaposzczególnychelementów
oknaizachowaniasięramki.Jesttojedynyargument,którymożeprzyjąćwielewartościnaraz.War-
tościsąflagamibitowymiokreślającymiposzczególnecechyokna,aoddzielasięjeoperatoremsumy
bitowej.DomyślnawartośćwxDEFAULT–FRAME–STYLEjestwrzeczywistościsumąkilkustylów:
wxMINIMIZE–BOX|wxMAXIMIZE–BOX|wxRESIZE–BORDER|wxSYSTEM–MENU|wxCAPTION
|wxCLOSE–BOX|wxCLIP–CHILDREN.Poniższezestawieniezawierainformacjęotym,jakiwpływ
nawyglądizachowanieoknamająposzczególneflagi:
•
wxMINIMIZE_BOX–wyświetlaprzyciskminimalizowaniaoknawpaskutytułu;
•
wxMAXIMIZE_BOX–wyświetlaprzyciskmaksymalizowaniaoknawpaskutytułu;
•
wxRESIZE_BORDER–oknomaramkęozmiennymrozmiarze;wyświetlauchwytwprawym
dolnymroguokna,apozbliżeniukursoradokrawędzioknapozwalanapłynnemodyfikowanie
jegorozmiaru;
•
wxSYSTEM_MENU–tworzytypowemenusystemowepojawiającesiępokliknięciuprawym
przyciskiemmyszynaikonieprogramuwpaskutytułu;
•
wxCAPTION–wyświetlapasektytułu;
•
wxCLOSE_BOX–wyświetlaprzyciskzamykaniaprogramuwpaskutytułu;
•
wxCLIP_CHILDREN–naprawiamigotanieoknazdużąliczbąkontrolek;działatylkowMS
Windows.
WszystkiedostępneflagistylówdlaklasywxFramezostałyszerokoomówionewpoświęconemu
temupunktowidokumentacjiwxWidgets.Wartorównieżzapoznaćsięzestylamidostępnymidlaklasy