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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2015, 10:14   #1
NEoMASTERR
Форумчанин
 
Аватар для NEoMASTERR
 
Регистрация: 22.12.2010
Сообщений: 175
По умолчанию Поток и canvas

Здравствуйте, имеется компонент который при создании создает некий эффект размытия, но форма виснет, подскажите как запустить в потоке из самого компонента? (компонент самостоятельный и код из других юнитов не должен его трогать)

Процедурка на размытие которую надо запустить в поток. В общем первый раз с таким сталкиваюсь, прошу помощи у знающих. Процедура GBlur слишком большая чтобы ее сюда помещать (наверное).

Код:
TMyPanel = class(TGraphicControl)
Код:
procedure TMyPanel.BlurShow;
begin
  //FBlur:single = 10.6 и опускается до 0.6 принудительно в конце
  while FBlur>=0 do
  begin
    FBlur:=FBlur - 1;
    paint;
  end;
  FBlur:=0.6;
  paint;
end;

Код:
procedure TMyPanel.paint;
var
//..
begin
//..
    GBlur(b,FBlur);
//..
end;
Пробовал через createthread, beginthread но компилятор ругается

Код:
BeginThread(nil,0,addr(BlurShow),nil,0,thrid);
Здравствуйте
NEoMASTERR вне форума Ответить с цитированием
Старый 27.02.2015, 10:39   #2
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

вы читали про BeginThread?
какой смысл в потоке?
lomastr_ вне форума Ответить с цитированием
Старый 27.02.2015, 11:43   #3
NEoMASTERR
Форумчанин
 
Аватар для NEoMASTERR
 
Регистрация: 22.12.2010
Сообщений: 175
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
вы читали про BeginThread?
какой смысл в потоке?
смысл в том чтобы не лагала форма при появлении компонента, если есть иные варианты решения проблемы, хоть весь компонент переделать, я выслушаю, я здесь за этим, а не за вопросами на мой вопрос
В идеале компонент при появлении должен красиво из размытия стать чётким, без лагов
Здравствуйте

Последний раз редактировалось NEoMASTERR; 27.02.2015 в 11:53.
NEoMASTERR вне форума Ответить с цитированием
Старый 01.03.2015, 09:52   #4
NEoMASTERR
Форумчанин
 
Аватар для NEoMASTERR
 
Регистрация: 22.12.2010
Сообщений: 175
По умолчанию

Ответ найден, использовал SetTimer вместо потоков
Здравствуйте
NEoMASTERR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поток bender42 Работа с сетью в Delphi 13 24.04.2013 17:47
Класс запускает поток, который заполняет этот класс. Обмен класс <=> поток. Человек_Борща Общие вопросы Delphi 8 27.02.2012 23:24
Поток. Не получается создать поток. Выдает ошибки при запуске bigory Общие вопросы по Java, Java SE, Kotlin 3 23.09.2010 00:40
поток Артэс Общие вопросы C/C++ 9 08.07.2010 12:12
Поток Черничный Общие вопросы Delphi 5 27.09.2008 21:23