|
открытие печатной формы openoffice с выводом на передний план
| ☑ |
0
alex_mas
11.05.17
✎
15:03
|
Прячется за окном 1С, возможно ли программно?
|
|
1
Ц_У
11.05.17
✎
15:14
|
(0) как открывается, код?
|
|
2
alex_mas
11.05.17
✎
15:19
|
(1) Работаю через БСП
кусок кода:
ContainerWindow = ПечатнаяФорма.Document.getCurrentController().getFrame().getContainerWindow();
ContainerWindow.setVisible(Истина);
ContainerWindow.setFocus();
ContainerWindow.IsMaximized = Истина;
ContainerWindow.toFront();
|
|
3
Ц_У
11.05.17
✎
15:28
|
(2) если убрать последние две строки или сетфокус вниз меняется что то?
|
|
4
alex_mas
11.05.17
✎
15:33
|
(3) Не меняется, на заднем фоне только разворачивается, если максимизировать.
Пробовал сворачивать все окна, этот код вообще не срабатывает
Shell = Новый COMОбъект("Shell.Application");
Shell.MinimizeAll();
|
|
5
Ц_У
11.05.17
✎
15:36
|
(4) в процессах еще опенофисы есть рабочие?
|
|
6
alex_mas
11.05.17
✎
15:40
|
(5) Нет, кстати сервер терминалов
|
|
7
Ц_У
11.05.17
✎
15:41
|
(6) а максимайзед работает?
|
|
8
alex_mas
11.05.17
✎
15:41
|
(7) работает, но разворачивает за окном 1С
|
|
9
Ц_У
11.05.17
✎
15:44
|
(8) а если к фрейму обратиться а не к окну документа и его толкнуть вперед?
|
|
10
alex_mas
11.05.17
✎
15:52
|
(9) Чудеса какие то, перезапустил 1С и код сработал:
Shell = Новый COMОбъект("Shell.Application");
Shell.MinimizeAll();
ContainerWindow.IsMaximized = Истина;
ContainerWindow.toFront();
ContainerWindow.setFocus();
Похоже единственный метод, свернув все окна показать OO.
Что интересно, если после этого свернуть ОО, то 1С оказывается развернутой, вероятно это какая то особенность 1С.
Спасибо за помощь!
|
|
11
Ц_У
11.05.17
✎
15:54
|
(10) в винде когда все окна сворачиваешь через вин+д а потом тыкаешь одно из окон, так же все окна возвращаются к состоянию до сворачивания.
|
|
12
alex_mas
11.05.17
✎
16:16
|
(11) Проверил на win 7, win 2008, не возвращаются ))
|
|