|
v7: Как изменить размер обработки под выскакивающее окно сообщений? | ☑ | ||
---|---|---|---|---|
0
Zhuravlik
20.02.13
✎
16:20
|
Добрый день. Есть обработка с табличным полем, в обработке применяется клас форма.Привязки (растягиваю ТаблПоле по форме). Когда появляется окно сообщений, оно закрывает собой нижнюю часть формы, что неудобно, т.к. не видно нижних строк ТаблПоля. Можно форму как-то подгонять под размер окна сообщений?
|
|||
1
ЧеловекДуши
20.02.13
✎
16:23
|
Формекс вас спасет...
|
|||
2
Zhuravlik
20.02.13
✎
16:31
|
Да я тоже так подумал, сижу вот копаю. Не пойму, как получить высоту окна сообщений?
|
|||
3
Zhuravlik
20.02.13
✎
16:39
|
Апну. Подскажите, как дорыться до окна сообщений?
|
|||
4
ЧеловекДуши
20.02.13
✎
16:41
|
(2)Предопределенная процедура Изменение размера окна или около этого :)
А далее ты рисуешь, рисуешь и рисуешь программно... Очень напоминает 8.2 управляемое приложение :) |
|||
5
Zhuravlik
20.02.13
✎
16:42
|
+ Окна.ПолучитьПанели() возвращает список, где есть "Окно собщений", т.е. это для конфы Панель. Теперь как ее высоту получить?
|
|||
6
Zhuravlik
20.02.13
✎
16:43
|
(4) У меня форма размеры не изменяет) Мне нужно по-идее получить высоту окна сообщений, и исходя из этой высоты изменить размер формы.
|
|||
7
ЧеловекДуши
20.02.13
✎
16:43
|
Вот так, это у меня в документе разворачивает ТЗ на весь размер табличной части из документа:
//Для Формекса Перем ФормаРасш; //****************************************************************************** Процедура ПриИзмененииРазмераОкна(ТипСобытия,Ширина,Высота) Перем ЛевоМЧ,ВерхМЧ,ШиринаМЧ,ВысотаМЧ; Перем ЛевоТЗ,ВерхТЗ,ШиринаТЗ,ВысотаТЗ; Перем ВысотаОкна, ШиринаОкна; Перем ФормаМногострочнаяЧасть,ФормаТЗТаблЧасть; Если ТипЗначенияСтр(ФормаРасш)<>"РасширениеФормы" Тогда //Сообщить(ТипЗначенияСтр(ФормаРасш)); ФормаРасш = 0; ФормаРасш = СоздатьОбъект("РасширениеФормы"); Иначе Попытка ВысотаОкна = ФормаРасш.Высота; ШиринаОкна = ФормаРасш.Ширина; Исключение Сообщить("Ошибка: "+ОписаниеОшибки()); КонецПопытки; КонецЕсли; ФормаМногострочнаяЧасть = ФормаРасш.ПолучитьАтрибут("МногострочнаяЧасть");//МногострочнаяЧасть ФормаТЗТаблЧасть = ФормаРасш.ПолучитьАтрибут("ТЗТаблЧасть"); //Размер Кнопак Поиска ФормаМногострочнаяЧасть.ПолучитьКоординаты(ЛевоМЧ,ВерхМЧ,ШиринаМЧ,ВысотаМЧ); ФормаТЗТаблЧасть.ПолучитьКоординаты(ЛевоТЗ,ВерхТЗ,ШиринаТЗ,ВысотаТЗ); ФормаТЗТаблЧасть.УстановитьКоординаты(ЛевоМЧ,ВерхМЧ,ШиринаМЧ,ВысотаМЧ); КонецПроцедуры |
|||
8
ЧеловекДуши
20.02.13
✎
16:43
|
(6) Сделай, что бы меняло :)
|
|||
9
ЧеловекДуши
20.02.13
✎
16:44
|
ПриИзмененииРазмераОкна - предопределенная процедура формекса
|
|||
10
ЧеловекДуши
20.02.13
✎
16:45
|
+ ВысотаОкна = ФормаРасш.Высота;
ШиринаОкна = ФормаРасш.Ширина; Вот твое, что тебе нужно. Это и есть размер самой формы. |
|||
11
ЧеловекДуши
20.02.13
✎
16:46
|
+(9)Сори, можешь не делать ,что бы меняло.
В сущности размер окна все ровно изменится :) |
|||
12
Zhuravlik
20.02.13
✎
16:48
|
(10) Формы, или видимой части текущего окна пользователя?
Вот это Окна.РазмерОкна("", Ш, В, , 1) - выдает мне разную высоту до и после сообщения, по-ходу то что надо)) |
|||
13
ЧеловекДуши
20.02.13
✎
16:52
|
(12)Всей текущей формы, где была вызвана функция "ФормаРасш = СоздатьОбъект("РасширениеФормы");"
|
|||
14
ЧеловекДуши
20.02.13
✎
16:53
|
(12)Рад за тебя :)
|
|||
15
ЧеловекДуши
20.02.13
✎
16:53
|
+(12)Но мне больше всего нравиться изменять саму форму, а не подгонять окно сообщений :)
|
|||
16
Zhuravlik
20.02.13
✎
16:55
|
(15) Да, вы правы, мне просто показалось что эта процедура касается только текущей формы. Спасибо большое, теперь получится)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |