![]() |
#1 |
Британский учённый
|
![]()
Доброго времени суток.
Смотрел на форуме, но ответа на свой вопрос не нашел. Как заставить форму при запуске в зависимости от парметров становиться модальной. Смотрел WinApi::sendMessage() там вроде никак нельзя. Вариант что все остальные окна не активны (как на форуме нашел) не подходит. Т.е. нужно окно со свойством WS_POPUP либо WS_EX_TOPMOST, но это как я понимаю задается только перед запуском окна. Может есть возмодность при вызове формы из кода задавать эти свойства? Кто может поделиться идеями на эту тему? Спсибо. |
|
![]() |
#2 |
Снова балуюсь косаптой :)
|
В аксапте модальное окно возможно сделать только конструкциями типа box::info - для вывода обязательных к прочтению пользователем сообщений и обязательных к ответу вопросов с выбором Да/Нет. Всё остальное от лукавого. Лучше бы вам разьяснить пользователям, что они могут прекрасно жить и без модальных окон.
__________________
Бесты и регарды! |
|
![]() |
#3 |
Administrator
|
Link
Случайно зашел в эту тему, насчет аксапты я не в курсе, но раз уж упомянуто winapi и стили, то тада небольшая цитата по той же WS_EX_TOPMOST: Цитата:
Сообщение от msdn
WS_EX_TOPMOST
Specifies that a window created with this style should be placed above all non-topmost windows and should stay above them, even when the window is deactivated. To add or remove this style, use the SetWindowPos function. + SetForegroundWindow + до кучи, функцией SetWindowLong можно стиль окна поменять.
__________________
Был грязный плащ на нем одет, Цилиндр черный смят в гармошку... |
|
![]() |
#4 |
Участник
|
См. линк
|
|
![]() |
#5 |
Британский учённый
|
![]()
ALL:
Всем большое спасибо! Проблему решили вот таким образом: X++: FormBuildDesign design; ; design = element.form().design(); design.windowType(FormWindowType::PopUp); Aleksey_M: Цитата:
+ BringWindowToTop
+ SetForegroundWindow + до кучи, функцией SetWindowLong можно стиль окна поменять. ![]() StasD: Спасибо но это не то. У меня задача не запретить остальные окна а вынести новое окно поверх уже существующих. |
|
![]() |
#6 |
Снова балуюсь косаптой :)
|
Цитата:
![]() Кроме того, модальным в общепринятом смысле окно с WindowType = PopUp не является, ибо все равно с него можно "соскочить" на любое другое открытое в аксапте окно. Просто попапное будет его перекрывать на экране.
__________________
Бесты и регарды! |
|
|
![]() |
||||
Тема | Ответов | |||
Диалоговое окно с запросом | 3 | |||
Динамичное д. окно | 2 | |||
диалоговое окно в init (e) Report (a) | 8 | |||
Как сделать модальное окно? | 5 | |||
Help! Активное окно в Ахапта. | 3 |
|