Более правильно передавать сообщение.
Объявляется константа, определяющая ваше собственное сообщение, которую необходимо разместить в каком-нибудь общедоступном модуле, чтобы она была доступна для модулей, где предполагается ее использовать:
WM_TESTVALUECHANGE = WM_USER+1; (принято начинать с WM_, далее свое наименование; все сообщения до WM_USER зарезервированы Windows).
После изменения значения в форме 1 посылаете сообщение второй форме:
SendMessage(Form2.Handle, WM_TESTVALUECHANGE, 0, T);
где "Т" - передаваемое значение.
Во второй форме надо объявить это сообщение и сделать его реализацию.
Код:
Form2 = class(TForm)
...
procedure TestValueChange(var Message : TMessage); message WM_TESTVALUECHANGE;
...
end;
implementation
...
procedure TestValueChange(var Message : TMessage);
begin
T := Message.LParam;
//где "Т" - переменная в этом классе и которая будет отображаться
//в форме 2
end;