[ Pobierz całość w formacie PDF ]
.Zaglądając do kodów zródłowych poszczególnych komponentów karty Samples możemysamodzielnie odszyfrować jeszcze wiele ich możliwości. 125Komponent TCCalendarwiczenie 6.9.Zaprojektujemy aplikację wykorzystującą komponent TCCalendar.Dodatkowoposłużymy się komponentami TBitBtn z karty Additional oraz TGroupBox z kartyStandard.Wykorzystamy też dobrze nam już znany przycisk TButton.1.Na formularzu umieszczamy komponent Calendar1 reprezentujący klasęTCCalendar.W inspektorze obiektów jego cechę BorderStyle zmieńmy nabsSingle.Klikając nań dwukrotnie dostajemy się do funkcji obsługi zdarzeniaCalendar1Change().Korzystając z metody DateToStr() właściwości Captionnaszego kalendarza e przypiszmy aktualną datę Calendar1->CalendarDate.2.Rozmieśćmy na formularzu dwa komponenty GroupBox1oraz GroupBox2reprezentujące klasę TGroupBox.Ich cechy Caption zmieńmy odpowiednio na&Cofnij oraz &Dalej.3.W obszarze wymienionych komponentów rozmieszczamy po dwa obiekty TBitBtn.Możemy uprzednio przy pomocy edytora rysunków przygotować odpowiednierysunki i korzystając z właściwości Glyph umieścić je na przyciskach, tak jakpokazuje to rys.6.17.4.Korzystamy z metod PrevYear(), PrevMonth(), NextYear() orazNextMonth() w celu uzupełnienia naszego kalendarza w funkcje obsługiodpowiednich zdarzeń polegających na wybraniu kolejnego roku lub miesiąca.Kompletny kod naszej aplikacji znajduje się na wydruku 6.8.Rys.6.17.DziałającykalendarzWydruk 6.8.Kod modułu Unit11.cpp kalendarza: Projekt11.bpr#include#pragma hdrstop#include "Unit11.h"#pragma package(smart_init)#pragma link "CCALENDR"#pragma resource "*.dfm"TForm1 *Form1;//--------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) 126Borland C++Builder 5.wiczenia praktyczne: TForm(Owner){}//--------------------------------------------------------------------void __fastcall TForm1::FormCreate(TObject *Sender){Caption = "Aktualna data: Rok-Miesiąc-Dzień "+ DateToStr(Calendar1->CalendarDate);}//--------------------------------------------------------------------void __fastcall TForm1::Calendar1Change(TObject *Sender){Caption = "Rok-Miesiąc-Dzień "+ DateToStr(Calendar1->CalendarDate);}//--------------------------------------------------------------------void __fastcall TForm1::BitBtn1Click(TObject *Sender){Calendar1->PrevYear();}//--------------------------------------------------------------------void __fastcall TForm1::BitBtn2Click(TObject *Sender){Calendar1->PrevMonth();}//--------------------------------------------------------------------void __fastcall TForm1::BitBtn4Click(TObject *Sender){Calendar1->NextYear();}//--------------------------------------------------------------------void __fastcall TForm1::BitBtn3Click(TObject *Sender){Calendar1->NextMonth();}//--------------------------------------------------------------------void __fastcall TForm1::Button1Click(TObject *Sender){Application->Terminate();}//--------------------------------------------------------------------Wykonany własnymi siłami kalendarz może wzbogacić nasze aplikacje o opcje pozwalające naproste kontrolowanie aktualnej daty bez potrzeby wnikania w skomplikowane zasoby systemuWindows.Oczywiście taki kalendarz w każdej chwili możemy ukryć.Wystarczy jego cechęVisible ustalić jako FALSE, co wcale nie przeszkadza, aby aktualna data nie była wyświetlana wjakimś miejscu aplikacji.Karta ActiveXKomponenty karty ActiveX nie wchodzą w skład biblioteki VCL.Są to przykładowe obiektyActiveX, zaprojektowane w ten sposób, by można było natychmiast skorzystać z ich usług. 127Tabela 6.8.Niektóre komponenty karty ActiveXIkona Typ ZnaczenieTChartfxObiekt ActiveX służący do tworzenia wykresów.TVSSpellVisual Speller Control Properties.Komponent pełniący rolę tzw.spell-chackera.TF1BookObiekt posiadający cechy arkusza kalkulacyjnego.TVtChartKomponent służący to tworzenia wykresów.Komponent TF1Bookwiczenie 6.10.9.Jako przykład wykorzystania w naszych aplikacjach niektórych komponentów kartyActiveX pokażemy, jak w bardzo prosty sposób można skorzystać z reprezentanta klasyTF1Book.1.Umieśćmy na formularzu komponent F1Book1.Klikając dwukrotnie w jego obszarze możemy zapoznać się z jego właściwościami, które w większości są zdublowanew analogicznej karcie inspektora obiektów.Rys.6.18.WłaściwościVCI Formula OneWorkbook2.Po skompilowaniu i uruchomieniu aplikacji dwukrotnie klikając prawym klawiszemmyszki dostaniemy się do Formula One Workbook Designer, który jestodpowiednikiem prostego arkusza kalkulacyjnego.Jego obszar podzielony jest nakomórki, których współrzędne określone są w sposób typowy dla arkuszykalkulacyjnych: wiersze (ang.rows) i kolumny (ang.columns).Korzystając z menuFile|Read możemy wczytać dane zawarte w plikach tekstowych, typowe dla formatuExcela, czyli *.xls lub w formacie *.vts, który jest preferowanym formatem 128Borland C++Builder 5.wiczenia praktyczneWorkbooka.Dane w postaci liczb możemy też wpisywać samodzielnie.Równieżzapis danych do pliku nie powinien przedstawiać żadnych problemów.Rys.6.19.Formula OneWorkbook Designer3.Jeżeli zechcemy graficznie zobrazować nasze dane, należy najpierw je zaznaczyć,albo przy pomocy myszki, albo korzystając z kombinacji klawiszy Shift + strzałka(kursor).4.Wybieramy ostatni przycisk z podpowiedzią Chart (diagram, wykres) i  ciągniemymyszką na wolnym obszarze arkusza.W ten sposób możemy uaktywnić kreatorawykresów Chart Wizard.Zawiera on bogaty zbiór różnego rodzaju diagramów iwykresów.Zakładki Gallery, Style, Layout oraz Axes ułatwiają optymalny dobórparametrów wykresu oraz dokonania jego opisu.Jeżeli dokonamy już wyboru najbardziej odpowiadających nam opcji, kończymyprzyciskiem Finish. 129Rys.6.20.Kreatorwykresów5.Końcowy wynik możemy zobaczyć w postaci podobnej do tej przedstawionej na rys.6.21.Rys.6.21.Wykresumieszczony na arkuszukalkulacyjnym 130Borland C++Builder 5.wiczenia praktyczneKarta InternetWykorzystując komponenty karty Internet można w aplikacjach umieszczać opcje pozwalające nakorzystanie z sieci Internet oraz protokołu TCP/IP.Tabela 6.9 [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • angela90.opx.pl