Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.08.2010, 00:16   #1
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию Из потока прочитать созданный в программе объект.

Извиняюсь, если заголовок не совсем адекватен...
Суть такова. В программе объявлена переменная типа TStringList. По OnCreate ее создаю, по OnDestroy освобождаю. Далее создаю поток, который должен работать с этой переменной, но компилятор выдает ошибку, мол, не знаю такую переменную. Вот код:
Код:
  TNewThread = class(TThread)
  private
  protected
    procedure Execute; override;
  public
    constructor Create(CreateSuspended: Boolean);
  end;

var
  Form1: TForm1;
  PathList,TempList:TStringList;

implementation

{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
  PathList:=TStringList.Create;
  TempList:=TStringList.Create;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  PathList.Free;
  TempList.Free;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 TNewThread.Create(false);
end;

{ TNewThread }

constructor TNewThread.Create(CreateSuspended: Boolean);
begin
  inherited Create(CreateSuspended);

end;

procedure TNewThread.Execute;
begin
    inherited;
  Form1.templist.Assign(Form1.MyList.Items);
  Exit;
end;
В выделенном месте ошибка. Помогите, пожалуйста, разобраться.
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума Ответить с цитированием
Старый 30.08.2010, 07:34   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

переменные PathList,TempList:TStringList;
описаны как VAR и не имеют никакого отношения к форме Form1
так что, правильно ругается! и потоки здесь не при чём (в любом месте так будет ругаться)
Уберите Form1.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.08.2010, 07:49   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

... Или перенеси эти переменные в класс формы. Можно даже в секцию Private
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.08.2010, 08:16   #4
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Stilet, пытался - не помогало.
Serge_Bliznykov, спасибо! Действительно, что-то я заплутал....

Вопрос закрыт.
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объявить какой-либо заранее созданный файл как нетипизированный anurid Паскаль, Turbo Pascal, PascalABC.NET 4 24.04.2010 20:00
Социальный сайт, созданный школьником DeKot Свободное общение 10 19.03.2010 20:16
Динамически созданный обьект, процедуры heart Общие вопросы Delphi 3 09.05.2009 17:32
виртуальный COM-порт, созданный Bluetooth Dazhe Общие вопросы Delphi 3 05.05.2009 18:27
Динамически созданный tabSheet S@fer Общие вопросы Delphi 7 08.04.2009 12:03