19.10.2005, 12:49 | #1 |
Участник
|
Нужно, чтобы при вызове из меню, если форма уже открыта, она активизировалась и поднималась наверх, а не создавалась новая. Возможно ли это?
|
|
19.10.2005, 13:31 | #2 |
Участник
|
нет. Вернее, только через глубокое и системное программирование.
мало того, ваша хотелка противоречит идеологии Аксапты. Почитайте про связь между формами DynaLink |
|
19.10.2005, 13:38 | #3 |
Участник
|
Можно использовать аналог статической переменной
База знаний ERP : Axapta / Singleton совместно с infolog.activateWindow Примерно так работает кнопка "Правка" в результатах компиляции: хранится Map асктивных окон и если окно в нем найдено оно просто активизируется \Classes\SysCompilerOutput\editElement <div class='XPPtop'>X++</div><div class='XPP'> ... [color=:blue]if[/color] (treeNodeWindowHwndMap.[color=:blue]exists[/color](parentNode.treeNodePath()) && WinApi::isWindow(treeNodeWindowHwndMap.lookup(parentNode.treeNodePath()))) { WinApi::bringWindowToTop(treeNodeWindowHwndMap.lookup(parentNode.treeNodePath())); } [color=:blue]else[/color] { treeNodeWindowHwndMap.insert(parentNode.treeNodePath(), parentNode.AOTnewWindow()); } ...</div> |
|
19.10.2005, 13:41 | #4 |
Участник
|
с доводами mazzy по поводу применения такого приёма согласен
|
|
20.10.2005, 11:39 | #5 |
Участник
|
Цитата:
мало того, ваша хотелка противоречит идеологии Аксапты.
Спасибо за идею с Singleton'ом, все получилось |
|
20.10.2005, 11:44 | #6 |
Участник
|
Цитата:
Сообщение от Ris
К сожалению, иногда любая идеология противоречит здравому смыслу конкретной задачи...
Как скажете... |
|