Podczas każdego uruchomienia C++ Builder automatycznie tworzy okno formularza i to właśnie w tym oknie odbywa się większość pracy nad formularzem.
Każda aplikacja C++ Buildera składa się co najmniej z jednego komponentu formularza, jednak aplikacja może zawierać więcej niż jedno okno formularza. W oknie inspektora obiektów (Object Inspector) znajdują się podstawowe właściwości komponentu 'Form'.
Poniżej umieszczam opis kilku właściwości, to dla początkujących programistów:
- Align - wyrównuje formularz na pulpicie.
- Height, Width, - określają odpowiednio szerokość i wysokość formularza.
- ClientHeight, ClientWidth - podobnie jak wyżej z tą jednak różnicą, że określają rozmiar obszaru roboczego okna formularza.
- BorderStyle - określa styl obramowania formularza, efekt zmian jest widoczny dopiero po skompilowaniu projektu aplikacji.
- FromStyle - określa sposób wyświetlania formularza, na szczególną uwagę zasługuje wartość 'fsStayOnTop' która sprawia, że formularz pozostaje zawsze na wierzchu.
Żeby zrozumieć jak działają pozostałe właściwości proponuję poeksperymentować. Dalej zamierzam się skupić na ukrytych właściwościach formularza:
- DoubleBuffered - może przyjmować tylko wartości true lub false. Włącza lub wyłącza podwójne buforowanie formularza, właściwość ta redukuje migotanie gdy formularz lub komponenty znajdujące się na nim są ponownie rysowane (odświeżane), jest to szczególnie przydatne w odniesieniu do komponentu 'Image'.
- Hide - nie podaje się żadnych wartości, procedura wywołania może być następująca: Form1->Hide(); uczyni to formularz niewidocznym. Metoda 'Hide' ustawia właściwość Visible formularza na false. Taki sam efekt można uzyskać wywołując procedurę From1->Visible = false;.
- Show - jak wyżej z tą jednak różnicą, że działa odwrotnie do 'Hide' czyli ustawia właściwość Visible formularza na true;
- ShowModal - działa podobnie do metody 'Show' z tą jednak różnicą, że wywołuje okno modalne np. gdy w czasie działania aplikacji potrzebujesz wywołać okno dialogowe możesz to zrobić na dwa sposoby:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
From2->Show();
}
ta procedura wyświetli okno dialogowe i pozwoli na wykonywanie określonych zadań na głównym formularzu 'From1'. Można jednak wywołać okno dialogowe i uczynić je modalnym, dzięki temu możliwość wykonywania jakichkolwiek działań w obrębie formularza głównego 'From1' zostanie zablokowana do czasu zamknięcia okna 'Form2':
void __fastcall TForm1::Button1Click(TObject *Sender)
{
From2->ShowModal();
}
- Refresh - metoda odświeżająca formularz. Przykładowa procedura wywołania: Form1->Refresh();. Metoda odświeża i przywraca stan domyślny formularza - wszystkie piksele otrzymują z powrotem kolor określony we właściwości Color formularza.
- Release - metoda Release usuwa obiekt z pamięci. Przykładowa procedura wywołania: From1->Release(); spowoduje to usunięcie formularza z pamięci ale nie zakończy działania programu. Niżej podaję przykład pełnej procedury usuwającej obiekt z pamięci i kończącej działanie aplikacji:
void __fastcall TFrom1::Button1Click(TObject *Sender)
{
From1->Release();
Application->Terminate();
}
'Application->Terminate();' kończy działanie aplikacji.
- Free - działa podobnie do metody 'Release', procedura wywołania jest taka sama: Form1->Free();.
- Update - metoda aktualizująca formularz. Procedura wywołania: Form1->Update();.
...ściągnij pliki.