Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.04.2010, 17:58
Vladislav Vladislav вне форума
Прохожий
 
Регистрация: 24.04.2010
Сообщения: 48
Репутация: 10
По умолчанию Thread

Есть действие OnClick работает на отлично.
При переносе этого действия в к примеру myThread.Execute выводит ошибку:
Цитата:
Incompatible types: 'TComponent' and 'TNewThread'
Вот на эту строку:
Код:
  R := TRegExp.Create(self);
(подключаю VBScript_RegExp_55_TLB).

Как это исправить ?

Заранее спасибо.
Ответить с цитированием
  #2  
Старый 30.04.2010, 18:22
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,048
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Более подробный код приведи. Какого типа у тебя R?
Ну и uses нужных модулей в юните потока не зыбывай.
Ответить с цитированием
  #3  
Старый 30.04.2010, 18:27
Vladislav Vladislav вне форума
Прохожий
 
Регистрация: 24.04.2010
Сообщения: 48
Репутация: 10
По умолчанию

Код:
begin
  webmaster := true;
  List := TStringList.Create;
  List.Text := IdHTTP1.Get('http://site.ru');
  R := TRegExp.Create(TForm1.BitBtn1Click);
  R.Pattern := 'src=""';
  R.Multiline := true;
  R.IgnoreCase := true;
  R.Global := true;
  mc := R.Execute(List.Text) as MatchCollection;
  if mc.Count > 0 then
  begin
    m := mc[0] as Match;
    sm := m.SubMatches as SubMatches;
    Stream := TMemoryStream.Create;
    IdHTTP1.Get(sm[0], Stream); 
    CaptchaKey := sm[1];
    R := nil;
    m := nil;
    mc := nil;
    Stream.Position := 0;
{Работаем над картинкой}.
  end;
end;
Поток создаю в Дельфи File - New - Other - Thread Object.
Ответить с цитированием
  #4  
Старый 30.04.2010, 20:37
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,048
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

here: R := TRegExp.Create(TForm1.BitBtn1Click);
I'm not sure, that TBitBtn is correct parent.
Try to pass Nil there.
Ответить с цитированием
  #5  
Старый 30.04.2010, 20:52
Vladislav Vladislav вне форума
Прохожий
 
Регистрация: 24.04.2010
Сообщения: 48
Репутация: 10
По умолчанию

Попробовал поставил R := TRegExp.Create(R); тоже самое что и self как я понял.

Теперь другой вопрос: создаю поток он на Unit2. (File-Create-Other-Thread Object).
Не подскажите (по пунктам) как его использовать в Unit1 ?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:21.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter