Pisze prosta aplikacje MDI w C++ Builder. Program sklada sie z dwoch form:
Form1 ustawilem na 'MDIForm' a Form2 na 'MDIChild'.
W formie glownej mam dwa przyciski, zapisz i odczytaj. 'Odczytaj' powoduje, ze tekst jest wczytywany z pliku i umieszczany w Memo Form2. W ta strone jest o tyle proste, ze procedure otwierania mozna umiescic w OnCreate Form2. Sytuacja komplikuje sie jezeli chce zapisywac, bo inicjalizacja musi wyplynac z Form1 i nie wiem jak przekazac informacje, do Form2 o tym ze powinna cos zrobic.
przy otwieraniu wyglada to tak:
void __fastcall TForm1::Otworz1Click(TObject *Sender)
{
TForm2 *Okno = new TForm2(this);
Okno->Show();
}
W Form2 umieszczam:
void __fastcall TForm2::FormCreate(TObject *Sender)
{
OpenDialog1->Execute();
Memo1->Lines->LoadFromFile(OpenDialog1->FileName);
}
no i to ladnie dziala, lecz co zrobic jesli chce zapisac zmiany do pliku?
funkcja:
void __fastcall TForm1::Zapisz1Click(TObject *Sender)
{
}
nie zadziala bo, nie zobaczy obiektu Okno.
Wymyslilem ze w tej funkcji 'Zapisz' moglobybyc cos takiego:
Form1->ActiveMDIChild->... tylko wlasnie nie wiem co dalej bo Form1->ActiveMDIChild->Caption="...."; dziala ladnie. Wiec skoro to dziala to moze i da sie jakos przekazac akcje do tego obiektu?