Form1 na Form2

0

WITAM!!!

Na formie Form1 i Form2 mam identyczne komponenty. Chcę aby po zaistnieniu pewnego warunku Form1 wskazywała komponenty formy drugiej. Np.

Form1.Button1.Caption:='Ala';
if (warunek) then pokazuj na Form2
Form1.Button1.Caption:='kot';<- wywołanie tej lini ustawi napis na guziku Form2

Proszę o wskazówki

0

Witam, w tym przypadku musisz dokonac modularyzcji, do czesci uses w form1 dodaj unit formy2, domyslnie Unit2. Po tym juz swobodnie mozesz komunikowac sie miedzy formami, np. form1.button1.caption := form2.button1.caption;

Jesli nadal nie wiesz o co chodzi to przeczytaj sobie jakis artykul o modularyzacji, na 4p jest ciekawy

0

jak chcesz się odwołać do form2 to pisz form2 zamiast form1 :/ jak formy są identyczne to możesz zadeklarować form2 jako TForm1, wtedy możesz trzymać w zmiennej cos: TForm1 wskaźnik do formy, odpowiednio form1 lub form2 i odwołując się do cos.komponent.Text odwołasz się do odpowiedniej formy

// nawet nie musisz w uses nic dopisywać w delphi 7 bo sam ci on zaproponuje dodanie unit2 do uses, wystarczy kliknąć yes i znowu skompilować

0

ale jak pobrać ten wskaźnik formy From2.Próbowałem:

Form1:=@Form2
Form1:=Addr(Form2)

...no ale nic nie działa

0
wacek napisał(a)

Form1:=@Form2
Form1:=Addr(Form2)

tak nie zrobisz, bo TForm1 <> Tform2, czyli niezgodność typów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1