Forma + Komponenty np Edit jak odznaczyć aktywność?

0

Mam formę z kilkoma editami i np edit2 jest aktywny z kursorem. Jak sprawdzić żeby z poziomu innej formy odznaczyć tą aktywność lub jak sprawdzić który edit na pierwszej formie jest aktywny?

0

O tym czy kontrolka Edit posiada focus, informuje własność Focused. Także pętla po kontrolkach na przykład z użyciem FindComponent i rzutowania na TEdit. I sobie sprawdzasz. Natomiast żeby kontrolce edycyjnej zabrać Focus, powinno się wysłać komunikat WM_KILLFOCUS. Po więcej patrz na MSDN.

0

@Rafał D - klasa TForm posiada taką właściwość jak ActiveControl typu TWinControl, która zawiera referencję do klasy aktywnego komponentu; Jeżeli masz dostęp do pierwszego formularza to możesz sprawdzić wartość tej właściwości; Właściwość ta zawiera wskaźnik na klasę komponentu nawet w przypadku, gdy formularz nie jest aktywny;

Przykładowy projekt z Delphi7 masz w załączniku (bez exeka);

Zamiast sprawdzać który komponent jest aktywny, możesz także przekazać do niego referencję do drugiego formularza, jeśli np. ten drugi wykorzystywany jest jako okno modalne lub dialogowe.

0

Program jest na zakładkach które są tworzone dynamicznie, dlatego formy czy ramki umieszczam na TabSheet-ach - Na inny pomysł nie wpadłem

tabsheet.jpg

dodanie obrazu do załączników posta - Furious Programming

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