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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2011, 12:09   #1
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию не появляется Showmodal из потока

Всем привет, вопрос возник т.к. оббычно запускались, а при таком раскладе нет
Код:
var
  st: TStringStream;
  Str3: AnsiString;
  step: byte;
  new2: TStringList;
  a:string;
    pipecs: string;
    i:integer;
begin
  St := TStringStream.Create;
begin
  IdHTTP1.get('сайт', st);
  If Pos('n-слово', st.datastring) > 0 then
//тут идёт парсинг
//удалён для облегчения кода
  step := 2;
  try
    a := Str3;
    new2 := TStringList.Create;
    Form2.image1.Canvas.TextOut(10, 10, a);
    Form2.ShowModal;
    pipecs := Form2.edit1.text;
    except    
  end;
bulldog5293 вне форума Ответить с цитированием
Старый 18.01.2011, 12:56   #2
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

А при дебаге видно, что указатель до него не доходит? Т.к. возможно какая-нибудь ошибка там... а из-за try она не вылетает.
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Старый 18.01.2011, 15:14   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
а из-за try она не вылетает.
Верно. Автор, пройди пошаговку.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.01.2011, 15:19   #4
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,762
По умолчанию

Из потока при обращении к VCL желательно использовать метод Syncronize
Например пишешь процедуру выше своего кода:
Код:
procedure ShowModalForm;
begin
Form2.ShowModal;
end;
А в своём коде ниже вызываешь её так (отрывок)
Код:
.........
  try
    a := Str3;
    new2 := TStringList.Create;
    Form2.image1.Canvas.TextOut(10, 10, a);
    Syncronize (ShowModalForm);
    pipecs := Form2.edit1.text;
    except 
.........

Последний раз редактировалось FaTaL; 18.01.2011 в 15:22.
FaTaL вне форума Ответить с цитированием
Старый 18.01.2011, 15:47   #5
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

FaTaL спс за пример, мне просто нужно было обращаться через TBitMap и в uses подключить Graphics. Вопрос снят
bulldog5293 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать номер потока из самого потока? GaMeSTeR Помощь студентам 0 03.12.2010 09:50
Формы ShowModal SoftKoc Общие вопросы Delphi 6 18.09.2010 16:37
ShowModal, close!!!! Ital1cs Помощь студентам 3 02.04.2010 19:50
вызов из dll не ShowModal. Roof Общие вопросы Delphi 7 25.07.2008 15:22
AlphaBlend + ShowModal Cardagant Общие вопросы Delphi 2 11.06.2008 15:42