Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];

Вниз

ShowModal   Найти похожие ветки 

 
SPeller   (2002-10-10 15:54) [0]

Заметил такой косячок: При показе модальной формы по Enabled главной должен выставляться в False, однако этого не происходит. Главная лишь переводит фокус на модальную при активизации. Если же сделать вручную установку свойства Enabled, то при закрытии модальной надо ещё и руками активизировать главную. В предыдущих версиях KOL такого не было.
И ещё. Думаю, следует при добавлении новых форм кроме главной автоматически выставлять им Visible в False, как это сделано в VCL, а также я думаю что было бы удобно чтобы при минимизации модальной формы минимизировалась и главная, или её показавшая, если модальных окон несколько.


 
SPeller   (2002-10-10 16:02) [1]

Модальная форма почему-то закрывается только со 2-го раза.


 
SPeller   (2002-10-10 16:07) [2]

Вопрос: можно ли сделать так, чтобы при закрытии модальной формы она не уничтожалась, а просто скрывалась из виду и происходил выход из ShowModal. Если сделать Hide то главная продолжает считать что модальная ещё на экране и усердно отказывается принимать фокус.


 
SPeller   (2002-10-10 16:11) [3]

А активизировать главную после закрытия модальной всё-равно приходится вручную, даже если закрыть естественным способом.


 
Alexander   (2002-10-11 10:40) [4]

А я все формы, кроме главной, создаю динамически и после закрытия удаляю. А модально показываю их как написано в факе - всё работает нормально.


 
SPeller   (2002-10-12 02:44) [5]

Но всё-равно, главная форма НЕ должна реагировать на действия мыши, а должна издавать ding. Она же просто при щелчке на ней переводит фокус на модальное окно, вполне правильно реагируя на двойной щелчок по заголовку - изменяет свой размер.


 
SPeller   (2002-10-12 03:23) [6]

Сделал всё как в факе, во втором случае, но результат тот же:
1) Главная форма реагирует на действия мыши;
2) При закрытии модальной формы главная не активизируется, и при этом если щёлкнуть на главной мышкой, то она усердно передаёт фокус вникуда.


 
SPeller   (2002-10-12 16:55) [7]

2 Vladimir Kladov

В FAQ на вашем сайте относительно правильного показа модальной формы, в том случае если форма не должна уничтожаться, сказано что ОБЯЗАТЕЛЬНО должен лежать на форме KOLApplet. Однако описанный там пример, как я уже говорил, не работает как надо. Пробема решается прекрасно в том случае, если вопреки FAQ Applet НЕ используется. Прошу обратить на это внимание.


 
Alexander   (2002-10-12 22:57) [8]

А у меня раздаётся именно "ding", когда пытаешься кликнуть на главной форме, хотя я припоминаю случай, когда происходило именно описаноое безобразие и я тогда так и не смог этого повторить.


 
SPeller   (2002-10-13 01:06) [9]

Н-да.... всё правильно..... трабла была в том что когда я кинул KOLApplet не сделался ребилд проекта, а когда удалил, проект собрался с аплетом, отсюда и пироги такие. Прошу прощения за сотворённое безобразие :-))


 
Vladimir Kladov   (2002-10-14 12:03) [10]


> SPeller © (10.10.02 15:54)
> Заметил такой косячок: При показе модальной формы по Enabled
> главной должен выставляться в False, однако этого не происходит.
> Главная лишь переводит фокус на модальную при активизации.
> Если же сделать вручную установку свойства Enabled, то при
> закрытии модальной надо ещё и руками активизировать главную.
> В предыдущих версиях KOL такого не было.

Неправда. Что такое по Enabled ?


> И ещё. Думаю, следует при добавлении новых форм кроме главной
> автоматически выставлять им Visible в False, как это сделано
> в VCL, а также я думаю что было бы удобно чтобы при минимизации
> модальной формы минимизировалась и главная, или её показавшая,
> если модальных окон несколько.

Что такое главная форма? Та, которая первая создалась? А если она
вообще невидима? Что такое "ее показывающая"? Ну какая разница
модальной форме, в каком модуле находится код, который ее оживил? Или предлагается изучать стек возвратов, и анализировать map-файл на предмет, кто вызвал модальную форму? :)


> SPeller © (10.10.02 16:02)
> Модальная форма почему-то закрывается только со 2-го раза.

Надо аккуратнее OnClose обрабатывать. Конечно, могут быть еще какие-то причины. Но вряд ли. И как вы ее закрываете? Правильный метод: Form.ModalResult := value; value <> 0


> SPeller © (10.10.02 16:07)
> Вопрос: можно ли сделать так, чтобы при закрытии модальной
> формы она не уничтожалась, а просто скрывалась из виду и
> происходил выход из ShowModal. Если сделать Hide то главная
> продолжает считать что модальная ещё на экране и усердно
> отказывается принимать фокус.

Конечно. OnClose. Accept := flase; Form.Hide;
Вообще-то демо-примеры есть.



> SPeller © (10.10.02 16:11)
> А активизировать главную после закрытия модальной всё-равно
> приходится вручную, даже если закрыть естественным способом.

Это смотря как закрывать.


 
Alexander   (2002-10-18 17:06) [11]

Ещё надо как-то исправить такое поведение: если показана модальная форма и переключиться в другое приложение, то назад переключиться можно только кликнув по этой модальной форме, а должна быть активация даже при клике на задизабленой форме, из которой вызвана модальная - это стандартное поведение Windows.
Да - это всё в NT, в 2000 всё нормально.


 
SPeller   (2002-10-19 00:49) [12]


> Alexander © (18.10.02 17:06)

В МЕ тоже самое.


 
Alexander   (2002-10-25 15:20) [13]

Ещё по модальности: почему когда я вызываю MessageBox с любым флагом модальности сообщение выводится не модально?
Приходится писать так:

Form.Enabled := False;
MessageBox();
Form.Enabled := True;
Form.Focused := True;


 
SPeller   (2002-10-26 02:57) [14]

Вообще, модальность я смотрю хромает



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.009 c
1-7494
DOR
2003-06-21 10:05
2003.07.03
Есть Memo1.Edit1,Timer1


7-7745
Rolex
2003-04-19 10:54
2003.07.03
Как отловить попытку или факт изменения реестра.


14-7610
som
2003-06-18 16:48
2003.07.03
Удаление компонент


4-7755
mtihonov1954
2003-04-30 05:59
2003.07.03
hook


3-7332
killer
2003-06-07 16:44
2003.07.03
как картинку перевести в BLOB?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский