|
Как заставить форму...(1с 7.7) Ø |
☑ | ||
|---|---|---|---|---|
|
0
Конечно
18.05.05
✎
14:47
|
Как сделать так, чтобы форма документа открывалась сразу в развернутом виде?
|
|||
|
1
Jeronimo
18.05.05
✎
14:52
|
Procedure Maximize()
WSHShell = CreateObject("WScript.Shell"); WSHShell.SendKeys("%"); WSHShell.SendKeys("{LEFT}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}"); EndProcedure; |
|||
|
2
jurii
18.05.05
✎
14:52
|
В смысле "чтобы не нажимать РАЗВЕРНУТЬ"?
Стандартными средствами НИКАК! Можно сделать просто большую форму документа... ;) |
|||
|
3
Конечно
18.05.05
✎
14:55
|
(1) Это ты про что?
|
|||
|
4
jurii
18.05.05
✎
14:57
|
(1) - прав, тока ; после EndProcedure убрать надо.
|
|||
|
5
Конечно
18.05.05
✎
14:58
|
Других предложений, кроме (2), нет?
|
|||
|
6
Jeronimo
18.05.05
✎
15:00
|
(4) я щас на делфях пишу, привык :-)
(3) это процедура, которую надо вызвать в ПриОткрытии(), чтобы окно развернулось |
|||
|
7
smaharbA
18.05.05
✎
15:00
|
(0) поверь народу, толькоб я этот скрипт "внешним" бы сделал, и задержечки между кеями поставил, так вернее, хотя в таком как (1)(ну почти) у меня 4 мес работает
|
|||
|
8
Конечно
18.05.05
✎
15:07
|
Спасибо! Все работает.
|
|||
|
9
smaharbA
18.05.05
✎
15:10
|
(8) рано радуешься, тормозов добавит при открытии, особенно когда уже форма "тормоз"
|
|||
|
10
Конечно
19.05.05
✎
07:11
|
Проблема уже появилась...
На одной машине с Win98 работает, а на другой ругается на строку WSHShell.SendKeys("%"); Какие еще условия нужны? Файл wscript.exe одинаковый. |
|||
|
11
smaharbA
19.05.05
✎
07:15
|
ищи и ставь wsh 5.6
|
|||
|
12
Худой
19.05.05
✎
07:22
|
(0)А есть увесистая причина для того чтобы это реализовывать?
|
|||
|
13
Jeronimo
19.05.05
✎
07:27
|
Для больших форм, на которые просто не получается втиснуть все, что надо в оконном режиме, да для 800х600 - есть. Не критично, конечно, но приятно.
Кстати, (0), лучше засунь процедуру в глобальник |
|||
|
14
Конечно
19.05.05
✎
07:38
|
Все... Разобрался
http://www.sinor.ru/~my1c/knowhow/winonscr.html<br>(13) полностью прав Всем спасибо! |
|||
|
15
primus
19.05.05
✎
07:54
|
(13) А можно пример кода для минимизации окна?
|
|||
|
16
Худой
19.05.05
✎
08:12
|
ИнтерЭсно! Попробовал то, что написано в ссылке(14)http://www.sinor.ru/~my1c/knowhow/winonscr.html. Сработало. Но!!! Если сделать следующие манипуляции - После первого открытия закрыть форму, сделать "немаксимальность" в любом окне или форме. Повторно открыть. Получим отсутствие эффекта.
|
|||
|
17
smaharbA
19.05.05
✎
08:19
|
(16) куда вставил глМаксимизироватьОкно(), надо в самый конец при открытии, а исче лучче на какоенибудь текстовое-скрытое поле формы и призадержать немного, для этого и "внешним" его(скрипт) и надо сделать
|
|||
|
18
Худой
19.05.05
✎
08:25
|
(17) Процедура глМаксимизироватьОкно()вставил в глобальный модуль. Вызов глМаксимизироватьОкно()поставил, как и написано в ссылке, в конец процедуры ПриОткрытии() в открываемой форме. Дальше стоит только КонецПроцедуры ПриОткрытии()
|
|||
|
19
smaharbA
19.05.05
✎
08:43
|
попробуй так, создай файл в КаталогеИБ SendKey.vbs с таким содержимым
... Set WSHShell = WScript.CreateObject("WScript.Shell") tX1=WScript.Arguments.Unnamed.Item(0) Key1=WScript.Arguments.Unnamed.Item(1) tX2=WScript.Arguments.Unnamed.Item(2) Key2=WScript.Arguments.Unnamed.Item(3) app=WScript.Arguments.Unnamed.Item(4) WSHShell.AppActivate app WScript.Sleep tX1 WSHShell.SendKeys(Key1) WSHShell.AppActivate app WScript.Sleep tX2 WSHShell.SendKeys(Key2) WSHShell.AppActivate app ... в глМаксимизироватьОкно() ... Задержка1="300"; Задержка2="200"; Кей1="%"; Кей2="{LEFT}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}"; заг="1С:Предприятие - "+Метаданные.Идентификатор+": "+ЗаголовокСистемы(); //+": "+ два пробела КомандаСистемы("wscript.exe "+КаталогИБ()+"SendKey.vbs "+Задержка1+" "+Кей1+" "+Задержка2+" "+Кей2+" "+Заг+"//b"); |
|||
|
20
Jeronimo
19.05.05
✎
08:44
|
(15) Окна формы или окна программы?
|
|||
|
21
primus
19.05.05
✎
08:47
|
(20) Окна формы
|
|||
|
22
smaharbA
19.05.05
✎
08:48
|
(15) на один {DOWN} меньше, но другието формы "выйдут" из максимизированного состояния
|
|||
|
23
primus
19.05.05
✎
08:54
|
(22)благодарю. Операторы привыкли работать с клавы, так что фишка им понравится.
|
|||
|
24
Jeronimo
19.05.05
✎
08:55
|
(21)Любопытно... Никогда не задавался этим вопросом...
Щас поэкспериментировал - (22) получится, если окно свернуто. . Щас не до подбора нужной комбинации, если хотел уличить - уличил :-) Если не сложно, скажи, как это делается, буду признателен. Либо придется самому сидеть подбирать... |
|||
|
25
smaharbA
19.05.05
✎
09:11
|
(24) да все просто скрипт за тебя жмет альт, потом вниз четыре раза и ентер, вот и нажали минимизировать, а если уже минимизировано просто "минимизировать" будет (то есть все мини) то нажмет файл+сохранить, но это будет неактивно для формы, а вот если "активной" будет таблица то вытекают последствия в виде окна сохранить...
... WSHShell = CreateObject("WScript.Shell"); WSHShell.SendKeys("%"); WSHShell.SendKeys("{LEFT}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}"); |
|||
|
26
Худой
19.05.05
✎
09:12
|
(19) Не-е-е! Это уже слишком большая плата за то, чтобы пользователь не щелкал лишний раз мышкой
|
|||
|
27
primus
19.05.05
✎
09:13
|
(22) А Жеронимо то прав. А как все-таки из мах в мин?
|
|||
|
28
smaharbA
19.05.05
✎
09:16
|
+(25) поправочка, без лефт
WSHShell = CreateObject("WScript.Shell"); WSHShell.SendKeys("%"); WSHShell.SendKeys("{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}"); |
|||
|
29
Jeronimo
19.05.05
✎
09:18
|
(27) Все равно работать лень - посижу поковыряю :-) Найду - скажу
|
|||
|
30
Jeronimo
19.05.05
✎
09:21
|
(28) Во, теперь не врешь! Хотя нет, опять врешь... (25) работает, когда окно в нормальном состоянии, (28) - когда в развернутом.
. Как сделать проверку, в каком состоянии находится окно??? |
|||
|
31
smaharbA
19.05.05
✎
09:26
|
(30) попробуй сначала развернуть как в 1(без разницы свернуто, нормальное или развернуто), а потом свернуть как (28)
|
|||
|
32
primus
19.05.05
✎
09:28
|
похоже без проверки состояния окна метод не покатит
|
|||
|
33
АЛьФ
19.05.05
✎
09:59
|
Во народ извращается...
Максимизирована Maximize Синтаксис: Максимизирована Назначение: Доступ к состоянию окна формы. Атрибут для чтения/записи. Возвращает/устанавливает признак развернутости окна формы (для немодальных окон). Замечание: Работает только после физического открытия окна. В момент первого обновления формы (до вывода окна на экран) все формы в 1С имеют значение этого атрибута равным 0. http://www.deltasoft.ru/?projects:pro6 |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |