Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
J.Matulewski,T.Dziubak,M.Sylwestrzak,R.Płoszajczak,Grafika.Fizyka.Metodynumeryczne.
Symulacjefizycznezwizualizacj
ą
3D,Warszawa2010
ISBN978-83-01-16178-1,©byWNPWN2010
1.Inicjacjaoknadlagrafiki3DgenerowanejzapomocąOpenGL
…
}
else
{
CDialog::OnPaint();
RysujScene();
ValidateRect(NULL);
}
}
ZawartośćmetodOn…związanychzposzczególnymikomunikatamipowinnaodpowiadaćza-
wartościsekcjicasezlistingu1.18.
35
C++BuilderiVCL
KonkurencyjnewzględemVisualC++,zintegrowaneśrodowiskoprogramistyczne
C++Buildermanadalgrupęwiernychużytkowników,chociażpolitykafirmyBorland
przezkilkaostatnichlatprowadziładostopniowegozmniejszaniajejliczebności.
Trzebajednakprzyznać,żejeżelichodziowygodęprojektowaniaaplikacji„okienko-
wych”C++Builderbezwątpienianadalwyprzedzaswojegojedynegokonkurenta.
Podobnie,jakwprzypadkuMFCwVisualC++,takżewśrodowiskuC++Builder
zbibliotekąVCLsamoutworzenieoknajestproste.WwersjiC++Builder6istar-
szychotrzymujemyje„zadarmo”wramachdomyślnegoprojektuładowanegoauto-
matyczniepouruchomieniuśrodowiska.Wnowszychwersjachprojekttegotypu
możemyteżłatwostworzyćzapomocąpoleceniaFile/New/VCLFormsApplica-
tion.
Abyułatwićnamżycie,bibliotekaVCLwyposażonajestwmechanizmzdarzeń,
któryjestniejakopośrednikiemmiędzyjejkomponentamiaprzysyłanymidoaplikacji
komunikatami
6.Dziękitemureagowanienakomunikatyjestrówniełatwe,jak
wprzypadkuaplikacjiMFC:podobniejakwVC++,wybieramyodpowiedniezdarze-
niewinspektorzeobiektów(odpowiednikoknaProperties)iwiążemyznimmetodę.
Załóżmy,żewśrodowiskuBCBotwartyjestprojektaplikacjikorzystającejzbi-
bliotekiVCL.DostosujmygodokorzystaniazOpenGL.
1.NaciśnijmyF12,abyprzełączyćsięmiędzydomyślnieaktywnympodglądem
formy(okna)aedytoremkodu,wktórymwidocznyjestplikUnit1.cppzawiera-
jącyklasęTForm1,tj.klasę„opisującą”widocznenapodglądzieokno.
2.DotejklasydodajmymetodyUstalFormatPikseli(listing1.12),InitWGL(li-
sting1.13),UsunWGL(listing1.14),UstawienieSceny(listing1.16)iRysujScene
(listing1.17).
6Bezwnikaniawszczegółyzdarzeniemożnazdefiniowaćjakowskaźnikdometody,którabędzie
wywołanawmomencieotrzymaniaodpowiadającegomukomunikatu.