Ovo je bas cudno. Prekjuche sam napravio projekat i stavio indy kontrolu na formu (kontrole su bile prikazane na paleti). Juce sam instalirao onaj update i danas (po prvi put) turbo c++ mi kaze da ne moze da koristi third-party komponente...
U svakom slucaju nije sve izgubljeno. Turbo C++ express te sprecava da koristis third-party kontrole u dizajn modu - dakle ne mozes da ih dodas na paletu ili na formu direktno ali ono sto mozes je da kreiras komponente dinamicki. Indy je ionako vec instaliran u <BDS>\include\Indy<9/10>
Na primer kako dodati Indy telnet komponentu dinamicki:
1. U header forme dodati sledece includove:
Code:
#include <IdBaseComponent.hpp>
#include <IdComponent.hpp>
#include <IdTCPClient.hpp>
#include <IdTCPConnection.hpp>
#include <IdTelnet.hpp>
2. u private deo form klase dodati clan TIdTelnet* kao ovde:
Code:
class TForm1 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
void __fastcall Button1Click(TObject *Sender);
private: // User declarations
TIdTelnet *myTelnet; //mora ovde a ne u published
void __fastcall OnDataAvailable(TIdTelnet* Sender, const AnsiString Buffer); //jedan event handler
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
3. Na kraju u konstruktoru inicijalizovati komponentu:
Code:
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
myTelnet = new TIdTelnet(this);
myTelnet->OnDataAvailable = OnDataAvailable; //kacenje event handlera
}
Tko leti vrijedi