[ margita @ 25.06.2005. 14:06 ] @
x files mi je jednom lijepo objasnio kako da u heder fajl neke forme stavim neku promjenjivu, i iz bilo koje komponente te forme joj mogu davati neku vrijednost...
e mene samo interesuje kako , ako imam npr. 3 forme, da iz forme 3 dajem neku vrijednost promjenjivoj "A" koja je deklarisana u heder fajlu forme 1??
ili npr. da u formi 2 iskoristim vrijednost promjenjive "b" koje je deklarisana u formi 3??
radi se o borland bilderu za c++...
[ X Files @ 25.06.2005. 20:47 ] @
Dakle, ti u formi 1 imas neku promenljivu a...
Code:

// --- Unit1.h / Form1 ---

   public:
      int a; 


A iz forme 3 hoces da u formi 1 promenis vrednost a. Kao prvo, a mora da bude
u sekciji public, izuzev ako klasa nije proglasena kao 'friend'. Zatim u formi 3 dodaj
#include "Unit1.h", gde je deklarisan pointer na formu 1. Posle sve ide po loju.

Code:

// --- Unit3.cpp / Form3 ---
#include "Unit1.h"
// ...

void __fastcall Button1Click(TObject *Sender)
{
   Form1->a = 10;
}


[ margita @ 26.06.2005. 12:01 ] @
hmmm...pa to sam i uradila...bas me intereuje sta sam "propustila"...
stavila sam pod "public" u heder fajl forme 1 int a; stavila #include"Unit1.h" i pozvala onako, ali nije radilo!stalno je javljalo kako je "a" nepoznato......ali vazno je da sam znala pravilan metod...
no dobro...probacu opet, pa ce nadam se raditi...

hvala puno...
[ X Files @ 26.06.2005. 14:41 ] @
Posalji minimalan ali kljuca fagment tvog koda i resicemo problem...
[ margita @ 26.06.2005. 15:01 ] @
pa evo probacu prvo ponovo da vidim da li radi kako si mi rekao, pa ako ne radi-javicu se!
ma kod je bio otprilike:

u Form-i 2:

nesto kao:

#include"Unit1.h"
---
if(RadioButton1->Checked==true)
{
Form1->a=1; //kad sam vidjela da ovo ne radi pokusavala sam i samo a=1;
}
ali kazem opet:pogledacu prvo da li je sada u redu...vjerovatno sam nesto preskocila!!!

puuuno ti hvala!!!!
[ X Files @ 26.06.2005. 15:18 ] @
--- Unit1.cpp ---
Code:

// ...
#include "Unit2.h"
// ...
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
   // Pocetna vrednost 'a'
   a=1;
}
// Caption = Prikazi Form2
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   Form2->ShowModal();
}
// Caption = Prikazi vrednost 'a'
void __fastcall TForm1::Button2Click(TObject *Sender)
{
   ShowMessage( IntToStr( a ) );
}


--- Unit1.h ---
Code:

   public:
      int a;




--- Unit2.cpp ---
Code:

// ...
#include "Unit1.h"
// ...
// Caption = Postavi 'a' na 2
void __fastcall TForm2::Button1Click(TObject *Sender)
{
   Form1->a=2;        
}



SALJEM I ATTACHMENT!!!


[Ovu poruku je menjao X Files dana 26.06.2005. u 16:24 GMT+1]