Witam
Pisze jakąś tam bazę danych.
Dodawanie i edycja rekordów odbywa się na Form2.
Rekordy wyświetlają się w DBgrid na Form1.
Dodawanie jak i edycja dobywa się na tych samych komponentach (LabeledEdit, Combobox itd.), czyli nie robiłem Form3 dla edycji.
O co mi chodzi?
Na form1 mam buttony Dodaj i Edytuj. Gdy klikam Dodaj czy Edytuj, odpala się Form2, wiadomo.
Na Formie2 mam buttony Zapisz i Zapisz edycję.
Zależnie, gdy wchodzę na Form2 poprzez Dodaj, przycisk Zapisz edycję ma być nieaktywny.
Analogicznie, gdy wchodzę na Formę2 przez Edytuj, ma być nieaktywny button Zapisz.
Namieszałem, ale pewnie zrozumiale. :)
Co robiłem?
//form1 - przycisk Dodaj
procedure TForm1.JvXPButton8Click(Sender: TObject);
begin
Form2.Showmodal;
Form2.JvXPButton3.Enabled:=False; //zapisz edycję
Form2.JvXPButton1.Enabled:=True; //Zapisz
end;
//form1 - przycisk Edytuj
procedure TForm1.JvXPButton10Click(Sender: TObject);
begin
Form2.ShowModal;
Form2.JvXPButton1.Enabled:=False; //Zapisz
Form2.JvXPButton3.Enabled:=True; //zapisz edycję
end;
Jednak to nie działa jak należy, poniewaz jak pierwszy raz wejdę na form2 od uruchomienia programu to przyciski odpowiednie się nie deaktywują, dopiero jak zamknę form2 i wejdę ponownie to działa, ale też nie do końca dobrze:
Klikam w Dodaj, nie działa dezaktywacja, wychodze z form2 i wchodzę znów poprzez Dodaj, już działa wszystko dobrze.
Analogicznie z buttonej Edytuj.
Jak to poprawić??? Co robię źle?