|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Динамическое создание потоков
Создаю потоки динамически посредствам массива потоков:
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls; type TForm1 = class(TForm) Button1: TButton; RichEdit1: TRichEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; type TMyThread = class (TThread) protected procedure Execute; override; end; var Form1: TForm1; TThreadArray: array [1..100] of TThread; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin for i:=0 to 20 do TThreadArray[i] := TMyThread.Create(False); end; { TMyThread } procedure TMyThread.Execute; begin inherited; form1.RichEdit1.Lines.Add('1'); end; end. Где я согрешил? |
#2
|
||||
|
||||
Массив создан от первого элемента до 100го: Код:
TThreadArray: array [1..100] of TThread; Код:
for i:=0 to 20 do TThreadArray[i] := TMyThread.Create(False); Код:
const ThCount = 20; //... var TThreadArray: array [0..ThCount] of TThread; //... for i:=0 to ThCount do //... И насколько я знаю, нельзя "менять" визуальные компоненты, а точнее любое из свойств в методе TThread.Execute. Последний раз редактировалось Uniq!, 29.09.2013 в 15:59. |
Этот пользователь сказал Спасибо Uniq! за это полезное сообщение: | ||
nano_bot (29.09.2013)
|
#3
|
|||
|
|||
Спасибо! Надо идти спать...
|