programowanie w c++ builder
Navigation
Strona główna arrow KOMPONENTY arrow Dynamiczne tworzenie komponentów
 
 
2008-04-14
Na początku lutego miała miejsce poteżna awaria międzykontynentalnych łącz internetowych, która spowodowała spadek ruchu w Sieci o ok. 50 %.Bliski Wschód, Indie i Pakistan miały utrudnienia w korzystaniu z Internetu.Korzystano wtedy z zapasowego łącza biegnącego po dnie Pacyfiku, jednak kabel szybko się zapchał.Początkowo podejrzewano zamach terrorystyczny, jednak po analizie zdjęć satelitarnych ujawniono, że zawinili kapitanowie 2 statków, którzy rzucili kotwice w złym miejscu.
2008-04-01
Z badań przeprowadzonych przez firmę Arbor Networks, liczba pakietów w Sieci wykorzystywanych do ataków DDoS może sięgać 2%.Każdego dnia przeprowadzanych jest ok. 1300 takich ataków.Hakerzy korzystają przy tym z łącz  Internautów.
2008-02-25

Według doniesień prasowych Wall Street Journal, Google korzystając z doświadczenia firmy Space Data zamierza stworzyć siec komunikacji bezprzewodowej typu WAN, a urządzenia przekaźnikowe miałyby być umieszczone na balonach.Sieć taka albo byłaby samodzielna, albo wspierałaby łączność na terenach wyżynnych.

2008-02-25

Nasa oraz British National Space Centerzamierzają stworzyć sieć komórkową na Księżycu do 2020 r.Sieć ta miałaby za zadanie komunikację astronautów z Ziemią oraz wspomagać komunikację na Ziemi.Rozmowy telefoniczne byłyby przesyłane za pomocą satelitów krążących wokół Księżyca.Pierwsze testy zaplanowana w 2012 r.

Dynamiczne tworzenie komponentów Drukuj Email
Oceny: / 3
KiepskiBardzo dobry 
Wpisał: doctor   
13.02.2007.
Dynamiczne tworzenie komponentów oraz podpinanie zdarzeń


   W tej lekcji nauczymy się, jak dynamicznie tworzyć komponenty.
Jest to bardzo wygodne w przypadku, gdy na formularzu trzeba ich umieścić mnóstwo
(a jakże), często w określonym porządku geometrycznym.
Zamiast robić to ręcznie, można sobie uprościć ten proces.

Do tworzenia komponentów w sposób dynamiczny posłuży nam operator new.
Aby utworzyć nowy komponent potrzebuemy znać nazwę jego klasy bazowej.
Musimy także podać "rodzica" utworzonego komponentu, a więc Form1;
Pamiętać należy, aby po skończonej pracy usunąć komponent operatorem delete.

Przykład

Na formularzu co sekundę będzie tworzony 1 button aż do momentu gdy na formie
będzie 10 buttonów. Kładziemy na formę 1 Label oraz 1 Timer. Na Label 2 będzie wyświetlana ilość
aktywnych komponentów na formie. Kto mi powie dlaczego jest ich 12, skoro utworzyliśmy tylko 10 buttonów?

 void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
ilosc_przyciskow++;
        if(ilosc_przyciskow < 10)
{
TButton *Button = new TButton(this);
Button->Parent = Form1;
Button->Name = "Button" + (String)ilosc_przyciskow;
Button->Caption = "Button" + (String)ilosc_przyciskow;
int left = random(Form1->Width - Button->Width);
int top = random(Form1->Height - Button->Height);

Button->Left = left;
Button->Top = top;

Button->OnClick = OnClick; //podpięcie obsługi zdarzenia
// pod dynamiczny komponent
int CC = ComponentCount; //ilosc komponentow na formie
Label1->Caption = IntToStr(CC);
}
        else
Timer1->Enabled = false;
}

 

HE HE HE

Gdy klikniemy na jakiś button, pojawi się okienko z nazwą tego przycisku.

 void __fastcall TForm1::OnClick(TObject *Sender)
{
ShowMessage(ActiveControl->Name);
}

 

W zdarzeniu OnClose aplikacji pamiętać należy o zwolnieniu jej zasobów za pomocą

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
Action = caFree;  //zwalnianie zasobow aplikacji
}

 Dla leniwych do pobrania skompilowana aplikacja oraz pliki projektu.

Odsłony: 3063
 

Sonda

Jaki oceniasz swoje umiejętności programistyczne w C/C++?
 

Popularne tagi

ascii auto button c++ combobox do generowania liter doctor drag and drop file *in formatowanie formatowanie liczb funkcje icony int to string keylogger klasy label liczba ktĂłra ma 100 liczba która ma 100 listbox math.h move to rs-232 showmessage string stringgrid szyfr cezara tchart timer tobject *sender updown vcl.h winexec zdarzenia zdarzenie

Darowizna dla autora

Imieniny

9 Maja 2008
Piątek
Imieniny obchodzą:
Beatus, Bożydar,
Grzegorz, Job,
Karolina, Mikołaj
Do końca roku zostało 237 dni.

Gościmy

Odwiedza nas 5 gości

Myśli Wielkich

Uczony jest człowiekiem, który wie o rzeczach nieznanych innym i nie ma pojęcia o tym, co znają wszyscy.
Albert Einstein (1879 - 1955)

Losowy obraz

b1.jpg

 

Rekomendacje

© 2008 Kurs programowania w C++ Builder
Ansi C | Turbo Pascal - kurs | Sklep Flavon | Programowanie, projektowanie www | Tiesto

Maca | Vilcacora | Sklep zielarsko - medyczny | Flavon Max | Sprzęt rehabilitacyjny | Sklep Flavon Antyoksydanty | Suplementy diety | Sprzęt ortopedyczny | Flavon taniej | Flavonoidy | Kuchenki mikrofalowe | świetlówki energooszczędne | Grzejniki konwektorowe |



template & graphics by Ferienhaus Italien
Wczasy nad morzem
Najlepsze wczasy nad morzem.
www.startravel.pl
Pozycjonowanie
Pozycjonowanie stron
www.performance-med…
Orange
Orange
orange.pl
Detektory Metali
Digi Polska proponuje detektory
www.yakudo.eu
crm
oprogramowane crm
www.simple.com.pl