Модальные формы и события

ASHASH
отредактировано 04:29 Раздел: FastScript
Я хочу из скрипта выполнить вот такой код:
var
  A,F:TForm;

  procedure CC;
  begin
    A:=TForm.Create(Application);
    A.ShowModal;
    A.Free;
  end;

begin
  F:=TForm.Create(Application);
  F.OnClick := @CC;
  F.ShowModal;
  F.Free;
end.

Но после клика по первой форме компилятор уходит в глухой цикл обработки и никогда из него не выходит.. как быть?

Комментарии

  • отредактировано 04:29
    Только что проверил - все работает.
    Только вторая форма появляется сверху первой и полностью на ней похожа ;)
    Ты ее мышкой сдвинь...
  • ASHASH
    отредактировано 04:29
    написал:
    Ты ее мышкой сдвинь...
    не прикалуйся!
    что формы одинаковые это и так ясно.. если более подробно, то делаю так:
    В качестве компилятора скрипта юзаю вот этот пример
    \FastScript\Demos\Main\
    в нем в мемо пишу этот самый код.. запускаю, жму на форму... все приплыли..
    дебагер говорит, что воткнулись вот тут:
    function TfsDesignator.DoCalc(...)
    ...
    begin
    ...
      if (Item is TfsCustomHelper) and not Item.IsMacro then
    ->    while Item.FLocked do;
    ...
    
    У меня 5 делфа (так на всякий случай) версия fs-1.8, так как?
  • отредактировано 04:29
    написал:
    не прикалуйся!
    Не веришь? Попробуй этот код:
    var
     A,F:TForm;
    
     procedure CC;
     begin
       A:=TForm.Create(Application);
    //++++++++++++++
       A.Top := 50;
       A.Left := 50;
    //++++++++++++++
       A.ShowModal;
       A.Free;
     end;
    
    begin
     F:=TForm.Create(Application);
     F.OnClick := @CC;
     F.ShowModal;
     F.Free;
    end
    
  • ASHASH
    отредактировано 04:29
    ты все же прикалуешся!
    попробовал.. то же самой ожидаемого окошка, сдвинутого на 50:50 не появилось! програма застряла в глухом цикле! (см. ранее)
  • ASHASH
    отредактировано 04:29
    Да и вот еще что в версии FS1.6 (да и 1.7 я думаю) код действительно работает без проблем, а вот в 1.8 происходит вышеописаный втык..

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.