Zmienna i Kontrolki

0

Witam wszystkich,
Czy jest możliwość połączenia zmiennej z property kontrolki na przykład z text editbox'a. W ten sposób, że każda zmiana zmiennej
prowadzi automatycznie do zmiany property editboxa.

Bardziej obrazowo.
Mam klasę która, pobiera i edytuje swoje zmienne. Te zmienne chce wyświetlić w gui. Ale nie chciałbym robić tego na zasadzie timera i sprawdzeniu czy dana zmienna się zmieniła. Jeżeli tak to Edit.Text = Obiekt.GetVariable;. Wolałbym to zrobić na zasadzie jakiegoś stałego linku, jeżeli jest to w ogóle możliwe.

0

a jeśli klasa będzie miała procedurę, która będzie ustawiała jej wartości jako podstawione do niej parametry? można wtedy od razu ustawić w kontrolce to co chcesz

0

No to ja mam dwa sposoby. Możesz zrobić tak

procedure ZmienProperty(Value: Integer);
begin
  Edit1.Property := Value;
  Edit1.InnaProperty := {cos innego};
end;

i teraz pierwszy sposób to pozamieniać wszystkie

Edit1.Propert := {coś tam};

na ZmienPropert({coś tam});

albo możesz napisać swój komponent dziedziczący po **TEdit** i zrobić 
```delphi
 property JakasTamProperty : Integer read FjakasTam write ZmienProperty;
0

Nie bardzo rozumiem co chcesz osiągnąć, ale najlepszym sposobem na to jest napisanie własnego komponentu i dodanie obsługi takiej zmiennej tak, jak napisał wyżej @TomRiddle;

Jeśli jednak korzystasz z zewnętrznej zmiennej, możesz w zdarzeniu OnChange kontrolki z klasy TEdit skopiować tekst kontrolki do zmiennej; Jednak będziesz musiał napisać zewnętrzną procedurę do każdej kontrolki, z której potrzebujesz pobierać wartość do zmiennej; Korzystając z przerobionego TEdit będziesz miał wszystko w środku kontrolki i nie będziesz musiał pisać tego dla każdej kontrolki z osobna;

0

Chcę osiągnąć coś na zasadzie LiveBinding. Gdzie zmiana jednego elementu komponentu ma wpływ bezpoś na drugi komponent. Tylko nie chce tego robić pomiędzy komponentami a pomiędzy komponentem a zmienną, która siedzi sobie gdzieś. Nie chce umieszczać procedur ustawiających text editboxa ( czy inny komponent ) ze względu na to, że chcę uniezależnić gui od zastosowanych klas.

0

No to wykorzystaj zdarzenie OnChange komponentu, skoro nie chcesz przerabiać samych kontrolek;

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