Помощь - Поиск - Пользователи - Календарь
Полная версия: Обновления данных на форме
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
Mr.Dmitry
Здраствйте не могу осуществить такую вещ как обновления данных с одного компанента на форме. Вообщем есть поле Label в нем при каждом запуске программы вводяться данные не зависящие от пользователя (тоесть пользователь их не вводит и не может изменить) в ходе работы программы данные в этом поле могут измениться и в зависимости от их измениния программа должна среагировать по разному.(label1.caption может вообще стать равной пустой строке). Я знаю когда должны эти данные меняться и они меняються. только в поле label новые данные отоброжаються после перезапуска программы а мне нужно чтоб это происходило в одну ссесию запуска программы.
мисс_граффити
приведи код...
как ты изменяешь это дело?
внутри какой процедуры/метода?

или попробуй Form1.Refresh - может, проблема именно с обновлением.
Mr.Dmitry
Цитата(мисс_граффити @ 3.10.2006 19:38) *

приведи код...
как ты изменяешь это дело?
внутри какой процедуры/метода?

или попробуй Form1.Refresh - может, проблема именно с обновлением.

Вообщем вот код который определяет ип Компьютера
Код
procedure TForm4.FormCreate(Sender: TObject);
type
  TaPInAddr = Array[0..10] of PInAddr;
  PaPInAddr = ^TaPInAddr;
var
  i:Integer;
  phe: PHostEnt;
  pptr: PaPInAddr;
  Buffer: Array[0..63] of Char;
  GInitData: TWSAData;
  str1,str2:string;
  p:integer;
begin
  WSAStartup($101, GInitData);
  GetHostName(Buffer, SizeOf(Buffer));
  phe := GetHostByName(buffer);
  if phe = nil then label2.Caption:='';
  pPtr := PaPInAddr(phe^.h_addr_list);
  I := 0;
  while pPtr^[i] <> nil do
   begin
    label2.caption:=inet_ntoa(pptr^[i]^);
    Inc(I);
   end;
WSACleanup;

нужный мне ип выводиться в программе если я отключаюсь от нета программа все равно в поле label пишет старый ип когда я снова потключаюсь к нету то у меня должен быть другой ип (но у меня опять выдаеться старый ип) чтоб ип обновился как я уже писал приходиться выходить и входить заново в программу. Так вот мне надо зделать так чтоб ип обновлялся в поле label В случае его реального обновления.
volvo
Цитата
Так вот мне надо зделать так чтоб ип обновлялся в поле label В случае его реального обновления.
Так вот возьми и перенеси этот код, скажем на таймер... Хотя нет, на таймер не надо вешать. Ты же говорил, что
Цитата
Я знаю когда должны эти данные меняться и они меняються
Вот на это событие и вешай обработчик, а то что же ты хотел? OnCreate у тебя вызывается один раз - при создании формы, поэтому и приходится перезапускать приложение...
Mr.Dmitry
Цитата(volvo @ 3.10.2006 22:06) *

Так вот возьми и перенеси этот код, скажем на таймер... Хотя нет, на таймер не надо вешать. Ты же говорил, чтоВот на это событие и вешай обработчик, а то что же ты хотел? OnCreate у тебя вызывается один раз - при создании формы, поэтому и приходится перезапускать приложение...

Большое спасибо
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.