Вверх ↑
Этот топик читают: Гость
Ответов: 3851
Рейтинг: 159
#1: 2008-04-20 15:07:19 ЛС | профиль | цитата
Вот схемка:
code_8888.txt
Если после запуска нажать "ввод", то дочерняя форма становится модальной.
Вопросы:
1. Как отменить модальность?
2. Почему в Edit, поле ввода не "очищается" (как написано в справке)?

карма: 0
начавший
0
файлы: 1code_8888.txt [407B] [276]
Ответов: 9906
Рейтинг: 351
#2: 2008-04-20 15:30:07 ЛС | профиль | цитата
0. Модальность не есть св-во формы. Это способ "показать" форму
1. Закрыть форму
2. Потому-что событие onEnter еще не закончилось. Как закончится (по закрытии формы), так и очистит


------------ Дoбавленo:

Вот, можешь проверить, когда кончаются такие события
Add(ChildFormEx,4027597,343,140)
{
}
BEGIN_SDK
Add(EditMultiEx,2711133,21,21)
{
WorkCount=#11:doShowModal|
link(doShowModal,8508709:doShowModal,[(133,27)(133,153)])
}
Add(MainForm,8508709,245,119)
{
Left=35
Top=105
Width=119
Height=126
Visible=1
Point(doShowModal)
}
END_SDK
Add(Button,1624048,168,140)
{
Left=30
Top=15
link(onClick,4008544:doEvent1,[])
}
Add(Button,14221524,168,203)
{
Left=30
Top=40
link(onClick,12553084:doEvent1,[])
}
Add(Hub,4008544,224,140)
{
link(onEvent1,4027597:doShowModal,[])
link(onEvent2,126329:doWork1,[(277,153)])
}
Add(Hub,12553084,224,203)
{
link(onEvent1,2545660:doMessage,[])
link(onEvent2,126329:doWork3,[(277,216)])
}
Add(Message,2545660,343,203)
{
}
Add(Beep,2763075,294,168)
{
Duration=500
}
Add(HubEx,126329,273,161)
{
link(onEvent,2763075:doBeep,[])
}
карма: 9

0
Ответов: 3851
Рейтинг: 159
#3: 2008-04-20 18:49:47 ЛС | профиль | цитата
Несколько непривычная идеология - форма создалась, она не модальная, но не всё потеряно - можно переделать на ходу, а вот назад дороги нет ..
Меня интересует, возможно ли организовать обратное, а лучше полный функционал, или если голову отрубили, то новая будет только в следующей жизни? Типа модальной не рождаются, ею становятся, или, как говорят "заходи не бойся, выходи не плач"..
Просто, мне нужно сделать форму невидимой и конечно немодальной до следующего её "показа", а выносить сам функционал, как-то некрасиво получается..
карма: 0
начавший
0
Ответов: 9906
Рейтинг: 351
#4: 2008-04-20 19:01:17 ЛС | профиль | цитата
Андрей. писал(а):
Несколько непривычная идеология - форма создалась, она не модальная

Она не непривычная, она не такая

Еще раз:
Galkov писал(а):
Модальность не есть св-во формы. Это способ "показать" форму

Форму, как и любой объект, можно создавать, можно - нет. И никакой "модальности" у него никогда не было, и не будет...
Нет такого св-ва в природе, разве что, в чьих-то воспаленных мозгах

Созданную, можно показывать, включая видимось.
Можно показывать другим способом: doShowModal
Все.

Андрей. писал(а):
Меня интересует, возможно ли организовать обратное

А меня, для полноценного ответа: тебе чего надо-то
Пока что, было сказано - для включения/выключения некого св-ва, которого не существует а природе


карма: 9

1
Голосовали:Andrey
Ответов: 3851
Рейтинг: 159
#5: 2008-04-20 19:49:42 ЛС | профиль | цитата
Всё, я осознал - после слов "Можно показывать другим способом:". И конечно, если форма была показана с помощью "doShowModal", то подачей "0" на "doVisible", её не спрячешь..
Спасибо.
Кстати сказать, я почему-то думал, что если закрыть форму по "doClose", то начинка её работать не будет..
карма: 0
начавший
0
Ответов: 9906
Рейтинг: 351
#6: 2008-04-20 20:26:58 ЛС | профиль | цитата
Андрей. писал(а):
то подачей "0" на "doVisible", её не спрячешь..

Спрячешь.

карма: 9

0
Главный модератор
Ответов: 2999
Рейтинг: 396
#7: 2008-05-12 21:32:45 ЛС | профиль | цитата
Как показать главную форму как модальную?

Влоб (тупо) у меня не получилось.
code_9030.txt
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
файлы: 1code_9030.txt [267B] [475]
Ответов: 1305
Рейтинг: 29
#8: 2008-05-12 21:46:38 ЛС | профиль | цитата
Nic, модальную относительно чего? Относительно самой себя? Тут кажется сама постановка вопроса бессмысленная.

Если относительно рабочего стола, то здесь без поллитры не получится Насколько я помню, нужно найти окно рабочего стола и объявить его родительским по отношению к твоему. Кажется, на стандартных элементах это не решаемо
карма: 0

0
Главный модератор
Ответов: 2999
Рейтинг: 396
#9: 2008-05-13 11:55:57 ЛС | профиль | цитата
Спасибо, разобрался.
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
Ответов: 186
Рейтинг: 9
#10: 2010-11-22 06:29:16 ЛС | профиль | цитата
Задачка следующая.
"Дочернюю форму с progressbar внутри" - показывает загрузку программы, и должна показываться как модальная.
НО
Galkov, Вот, можешь проверить, когда кончаются такие события
код
code_21560.txt

Процессы в других формах останавливаются.
Может есть другие идеи?
Пишу сюда, так как у меня вопрос встал именно с модальностью.
карма: 0

0
файлы: 1code_21560.txt [844B] [146]
Ответов: 274
Рейтинг: 47
#11: 2010-11-22 08:12:25 ЛС | профиль | цитата
Chipset, можно так
code_21561.txt
карма: 0

0
файлы: 1code_21561.txt [1KB] [169]
Ответов: 186
Рейтинг: 9
#12: 2010-11-22 08:24:08 ЛС | профиль | цитата
Laetar писал(а):
Chipset, можно так
code_21561.txt
Спасибо. Хороший вариант. Но суть именно в модальности. Что бы пользователь не мог ничего нажать лишнего.
Просто прога большая стала, и в каждом модуле свой progressbar, хотел я все их удалить и сделать один.


карма: 0

0
Ответов: 8958
Рейтинг: 824
#13: 2010-11-22 10:28:15 ЛС | профиль | цитата
Chipset, [flood]Недооценка противника (пользователя) ведёт к поражению! Он (пользователь) всегда найдёт способ нажать что-либо лишнее, как бы программист не изголялся [/flood]
карма: 19

0
Ответов: 274
Рейтинг: 47
#14: 2010-11-22 12:36:11 ЛС | профиль | цитата
Chipset, А если так?
code_21562.txt
карма: 0

1
файлы: 1code_21562.txt [1.6KB] [142]
Голосовали:Chipset
Ответов: 186
Рейтинг: 9
#15: 2010-11-23 04:56:12 ЛС | профиль | цитата
Laetar, спасибо, это то что надо.
ДА. Зеленый я еще.
------------ Дoбавленo в 05.26:
Вот что получилось.
Может пригодится кому.
http://forum.hiasm.com/forum_serv.php?q=56&id=1966
карма: 0

0
15
Сообщение
...
Прикрепленные файлы
(файлы не залиты)