Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Отслежиевания изменения переменно


Автор: Ravenlord 13.6.2008, 16:53
Доброго времени суток. Возник такой вопрос... 
Есть Dllка, в которой содержится класс. В классе есть переменная типа integer. Как сделать, чтобы по изменению этой переменной срабатывало какое-либо событие?

Автор: aktuba 13.6.2008, 17:15
Код

type
  TMyClass = class
  private
    FInt: Integer;
  protected
    procedure SetInt(Value: Integer);
  public
    property Int: Integer read FInt write SetInt;
  end;


Примерно так. В SetInt присваиваешь значение переменной FInt и делаешь другие, необходимые тебе, действия.

Автор: Ravenlord 13.6.2008, 17:42
Спасибо, но я мел в виду немножко не то.
К примеру у нас есть процедуры MyProc1, MyProc2, MyProc3, MyProc4  которые могут присвоить FInt определенные значения, к примеру 2 или 3 или 0. А что-то должно слушать переменную FInt и при изменении ее значения делать определенные действия.

Автор: Rrader 13.6.2008, 17:54
Способа оптимальней, чем изменение через метод (setter) или функцию (regular procedure), которые вызывают определенные действия, нет. Если ручной контроль неуместен, конечно smile 

Автор: Ravenlord 13.6.2008, 18:07
Хех, спасибо. Буду думать smile

Автор: MetalFan 13.6.2008, 19:55
если нужно отследить изменение переменной на момент отладки, то можно поставить Data Breakpoint

Автор: aktuba 13.6.2008, 20:05
Цитата(Ravenlord @  13.6.2008,  18:42 Найти цитируемый пост)
К примеру у нас есть процедуры MyProc1, MyProc2, MyProc3, MyProc4  которые могут присвоить FInt определенные значения, к примеру 2 или 3 или 0. А что-то должно слушать переменную FInt и при изменении ее значения делать определенные действия.

Так а зачем присваивать значение FInt? Присваивай значение Int, и все будет работать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)