Spre deosebire de Borland C++ clasic, in Borland C++ Builder se scriu programe sub Windows, folosindu-se anumite componente specifice Windows-ului. Programele astfel concepute trebuie sa raspunda anumitor evenimente (apasarea unei taste, un click de mouse etc.) Actiunile utilizatorului sunt efectuate asupra unor obiecte care sunt caracterizate prin anumite proprietati (culoare, marime etc.) Evident ca nu orice obiect poate raspunde la orice eveniment si difera de altele prin diferite proprietati.
Programele sub windows utilizeaza biblioteci speciale de subprograme numite DLL-uri (dynamic-link library). Acestea includ elementele de interfata utilizate (subprograme care se apeleaza de fiecare data cand este nevoie de ele).
Interfata bcb contine:
Bara
de comenzi rapide butonul run Paleta de
componente
Inspectorul de obiecte Formular
Executand pe butonul run aflat pe bara de comenzi rapide sau F9 se comanda compilarea si executia programului.
Obiectele (componentele) aplicatiei se adauga in formulare. O aplicatie poate contine unul sau mai multe formulare. Colectia de componentele se gaseste pe Paleta de componente.
Un obiect are anumite proprietati, valorile acestora putand fiind stabilite utilizand inspectorul de obiecte. De exemplu, pentru formular (care este si el un obiect) se poate stabili textul din bara de titlu utilizand proprietatea Caption.
Fisierele care alcatuiesc programul sursa C++ Builder sunt:
Un program sursa in C++ Builder ocupa mai multe fisiere. El este realizat sub forma unui proiect.
In linii mari acesta contine informatii asupra celorlalte fisiere care alcatuiesc proiectul: project1.exe, project1.obj, project1.res, unit1.obj, unit1.dfm
Obs. Nu interveniti in sursa acestui fisier!
#include <vcl\vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
USERES("Project1.res");
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
//se initializeaza aplicatia
Application->CreateForm(__classid(TForm1),
&Form1);// se creeaza formularul de baza
Application->Run();// se lanseaza aplicatia in executie
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
In loc de functia main() aici
intervine functia WinMain()
Obs. Nici in acest fisier nu se intervine.El este gestionat automat de mediu
i.
Are extensia .h
ii.
Contine clasa care defineste formularul:
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <vcl\Classes.hpp>
#include
<vcl\Controls.hpp>
#include <vcl\StdCtrls.hpp>
#include <vcl\Forms.hpp>
//---------------------------------------------------------------------------
class TForm1 : public Tform // clasa care defineste formularul
{
__published: // IDE-managed Components
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
Obs. Nici in acest fisier nu se intervine.El este gestionat automat de mediu
i. Are extensia cpp
ii. Este creat automat de catre mediu, dar functiile care-l alcatuiesc sunt scrise de programator
iii. Se vizualizeaza astfel: view/units
iv. In cazul unei aplicatiii care contine un buton si care ca urmare a evenimentului click (de mouse) activeaza o caseta de avertizare sursa acestui fisie este:
#include <vcl\vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ShowMessage("Prima aplicatie a reusit!");//aceasta
linie este scrisa de programator
}
//---------------------------------------------------------------------------
i. Are extensia dfm
ii. Este creat automat de mediu
iii. Se vizualizeaza apasand butonul drept al mouse-ului deasupra formularului: view as text. (pentru revenire view as form)
iv. Iata sursa unui astfel de fisier:
object Form1: TForm1
Left = 274
Top = 182
Width = 435
Height = 255
Caption = 'Form1'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 56
Top = 48
Width = 65
Height = 33
Caption = 'apasa'
TabOrder = 0
OnClick = Button1Click
end
end
Obs: O aplicatie poate contine mai multe formulare si pentru fiecare dintre acestea vor exista cele trei fisiere (fisier antet, fisier pt functii utilizator, fisier proprietati formular)
Salvarea programului: este recomandabil sa se creeze
un folder care va contine toate fisierele aplicatiei. Salcvarea se realizeaza
cu: File / Save all
Deschiderea aplicatiei: se realizeaza cu File / Open selectand fisierul cu extensia mak
1. Scrieti un program care afiseaza o fereastra. Titlul ferestrei (proprietatea caption a formularului) va fi prima aplicatie