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ędneoknaokreś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ściflagamibitowymiokreś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_BOXwyświetlaprzyciskminimalizowaniaoknawpaskutytułu;
wxMAXIMIZE_BOXwyświetlaprzyciskmaksymalizowaniaoknawpaskutytułu;
wxRESIZE_BORDERoknomaramkęozmiennymrozmiarze;wyświetlauchwytwprawym
dolnymroguokna,apozbliżeniukursoradokrawędzioknapozwalanapłynnemodyfikowanie
jegorozmiaru;
wxSYSTEM_MENUtworzytypowemenusystemowepojawiającesiępokliknięciuprawym
przyciskiemmyszynaikonieprogramuwpaskutytułu;
wxCAPTIONwyświetlapasektytułu;
wxCLOSE_BOXwyświetlaprzyciskzamykaniaprogramuwpaskutytułu;
wxCLIP_CHILDRENnaprawiamigotanieoknazdużąliczbąkontrolek;działatylkowMS
Windows.
WszystkiedostępneflagistylówdlaklasywxFramezostałyszerokoomówionewpoświęconemu
temupunktowidokumentacjiwxWidgets.Wartorównieżzapoznaćsięzestylamidostępnymidlaklasy