![]() |
|
v7: Formex, СоздатьШрифт, размер - не соответствует...? | ☑ | ||
---|---|---|---|---|
0
Злопчинский
06.05.18
✎
13:11
|
Formex 2.0.5.120
Делаю шрифт, назначаю на ТЗ на форме КодШрифт = глСервис.СоздатьШрифт("Arial Narrow",10); РасшФормы = СоздатьОбъект("РасширениеФормы"); РасшФормы.ПолучитьАтрибут("ТЗФорма").Шрифт = КодШрифт; РасшФормы = ""; Отображается явно не шрифт размером "10", а очень мелкий... что делаю не так..? @Альф, приди! |
|||
29
Злопчинский
07.05.18
✎
21:47
|
(23) Вот это совсем ничего не понял.
|
|||
30
Злопчинский
07.05.18
✎
21:48
|
(27) ну, программно можно реализовать вроед бы...
|
|||
31
trdm
08.05.18
✎
00:57
|
(30) На все списки не напасешся.
|
|||
32
Emery
08.05.18
✎
07:04
|
(28) > Для такого большого количества полей не рассматривали как альтернативу ТабличноеПоле или Йоксель? Или табличный вид неприемлем?
Речь не идет, чтобы имитировать большое количество полей любой ценой. Вполне можно использовать и штатную таблицу в режиме ввода данных. Но хочется, чтобы это было красиво и удобно. А именно нравится когда поле внешне оформлено как стандартный элемент ввода данных, но с большими возможностями. Другими словами, хорошо было бы, если бы, например, у штатного текстового элемента была возможность создавать рамку углубления либо выпуклости и вообще больше возможностей по оформляжу, то же изменение цвета фона. ТабличноеПоле и Йоксель хороши для своих целей, но все же, если есть необходимость работать с табличными типами данных, то я больше склоняюсь к идее использования внедренного (на клиентскую форму) эксела, полноценного («Excel.Sheet», «Excel.AddIn» или «Excel.Chart») либо облегченного (веб-компонента) «OWC11.Spreadsheet» и т.п.), тем более что это решение можно сделать универсальным, посредством ВК, как для «семерки», так и для «восьмерки». Экселоподобные формы, которые я хотел бы видеть непосредственно в 1С, можно посмотреть здесь: http://emery-emerald.narod.ru/Xls/PlanGrafik24.xls . Да, это можно оформлять в виде отчетов, но удобно будет, когда они будут встроены в формы данных. Есть еще одна идея использовать эксел в режиме форм ввода данных, типа офисного продукта InfoPath либо Adobe’овского аналога. Но тут бы очень пригодилась бы возможность декора для ячеек Excel, типа их выпуклости и вогнутости, может быть это и можно делать в Экселе, но я пока не знаю как. |
|||
33
АЛьФ
08.05.18
✎
08:58
|
2(27) Именно в списках с пометками?
|
|||
34
Ёпрст
гуру
08.05.18
✎
10:08
|
(32)
>>>>у штатного текстового элемента была возможность создавать рамку углубления либо выпуклости и вообще больше возможностей по оформляжу так, что ле ? :) https://cloud.mail.ru/public/AXw4/sFzetNtTF |
|||
35
Emery
08.05.18
✎
10:49
|
(34) > так, что ле ? :)
Это все конечно круто, но в данном случае речь шла об элементе STATIC. Именно для него интересно сделать выпуклость или, лучше, «впуклость» :) Если в ваших элементах 1CEDIT: ДиалогВводаN поменять строку на число, то ничего путного из этого не выйдет. Но даже в ваших элементах 1CEDIT, как сделать выравнивание текста формексом? Поскольку ПослеСозданияФормы() работает лучше ПослеОткрытия(), то я опять возвращаюсь к варианту с раскраской числовых полей формексом. Вариант без формекса (см мою первую ссылку здесь), тоже работает неплохо, однако не надо будет заморачиваться с созданием подходящей картинки – подложки, хотя сам по себе этот вариант тоже интересен. |
|||
36
АЛьФ
08.05.18
✎
10:51
|
2(35) Попиарю чуток свою древнюю статью: http://dorex.pro/?articles&a1&p1
|
|||
37
Ёпрст
гуру
08.05.18
✎
11:20
|
(35) хочется красивостей - тупо любой активикс, хоть TText и вперёд, там и рамочки и выпуклости и выравнивание и шрифт и цвет и фон.. и хоть круглые кнопки
|
|||
38
Emery
08.05.18
✎
11:30
|
(36) Спасибо, интересно! Особенно про «пример вдавленной рамки». Но чем это принципиально отличается от использования подходящей картинки подложки?
А так, отображение красивых кнопок как бы уже не проблема, тем более что меня всегда больше интересовало красивое отображение данных. Прогресс-бар я себе организовал через маленькую обработочку с надписью «Ждите…», которая исчезает, после окончания соответствующего процесса. Закладки, как и периодические реквизиты справочников, я не использую принципиально, только кнопочные формы, т.е. вызов посредством кнопок нужных внешних форм. Заодно полностью игнорирую документы, журналы и регистры, все это вполне успешно моделируется справочниками. Вот если бы в экселе можно было бы ячейки делать «вдавленными», т.е. имеющих особую рамку, то тогда было бы особенно привлекательно использовать embedded эксел как генератор форм ввода-вывода данных для клиентских программ. Короче говоря, используя подходящие ВК (типа вашего формекса) можно делать приличные вещи даже на «семерке». Однако, как говориться, совершенству нет предела :) . |
|||
39
Emery
08.05.18
✎
11:55
|
(37) > хочется красивостей - тупо любой активикс, хоть TText и вперёд, там и рамочки и выпуклости и выравнивание и шрифт и цвет и фон.. и хоть круглые кнопки
Активикс посредством 1C++.dll? Это все замечательно, но я все же предпочитаю использовать собственный путь, через создание ВК для 1С. Просто гибкости на порядок больше. С другой стороны, красота не самоцель. Пока меня более-менее устраивает все в «семерке» плюс FormEx.dll и aiWindows.dll (для работы с табличными окнами). Даже 1Срр не сильно нужен. По большому счету текущий разговор о рюшечках, это так, к слову, немного потрындеть, чтобы голова не сильно болела от программирования. Все и так хорошо, а будет еще лучше :) . |
|||
40
Злопчинский
08.05.18
✎
14:30
|
@Альф, а ПослеСозданияФормы в текущих последних версиях Formex отрабатывает для всех форм - и открываемых обычно и открываемых модально?
|
|||
41
АЛьФ
08.05.18
✎
14:55
|
2(40) Да. Там же проблемы именно с ПослеОткрытия() были.
|
|||
42
Злопчинский
08.05.18
✎
16:33
|
(41) у мну - никогда не были. В "старых" версиях было что для модальных форм не отрабатывал ПослеОткрытия()
Приходилось так писать //******************************************************************************************************************************** // Процедура ПослеОткрытия() глЦентрироватьОкно(Форма); КонецПроцедуры // ПослеОткрытия() //******************************************************************************************************************************** // Процедура ПослеСозданияФормы() Если Форма.МодальныйРежим() = 0 Тогда Возврат; КонецЕсли; ПослеОткрытия(); КонецПроцедуры // ПослеСозданияФормы() |
|||
43
Злопчинский
08.05.18
✎
16:34
|
я так в итоге и не понял, что делать с "неадекатностью" размера шрифта...
|
|||
44
АЛьФ
10.05.18
✎
08:35
|
2(43) Использовать шрифт, у которого есть нужный размер.
|
|||
45
Злопчинский
10.05.18
✎
11:04
|
хм.. а что значит "нужный размер"..?
если в печатной форме я могу установить Arial Narrow 10 - и все норм, а на форме не прокатывает..? - это значит что нет нужного размера? и если я через формекс устанавливаю СоздатьШрифт("Arial Narrow",22) - а вижу в итоге что созданный шрифт по размеру эквивалентен существенно меньшему, в районе 10-12 - это норм? |
|||
46
АЛьФ
10.05.18
✎
11:10
|
2(45) Если кратко, то да, норм.
|
|||
47
Злопчинский
10.05.18
✎
14:47
|
(46) ...то есть для форм подбор нужного размера шрифта для СоздатьШрифт(...) - исключительно эмпирически?
|
|||
48
АЛьФ
10.05.18
✎
14:53
|
2(47) Не, ну почему же? В соответствии с (23).
|
|||
49
АЛьФ
10.05.18
✎
14:54
|
2(47) Можешь мне сделать тестовую обработку? Есть мысль, которую хотелось бы проверить.
|
|||
50
trdm
10.05.18
✎
15:49
|
(33) > Именно в списках с пометками?
да. но поиск полезен и в комбо-боксах. там есть поиск по первым буквам, но этого зачастую маловато. |
|||
51
АЛьФ
10.05.18
✎
16:01
|
2(50) Для комбобоксов есть метод АтрибутФормы::ПерехватитьСписокЗначений().
Список без пометок ловит первые буквы и сам. А вот с пометками... Тут надо подумать... |
|||
52
Злопчинский
10.05.18
✎
16:27
|
(49) ща, наваляю
|
|||
53
Злопчинский
11.05.18
✎
02:34
|
...читать как "наваяю"
|
|||
54
Злопчинский
11.05.18
✎
02:40
|
(49) Отправил на мыло
|
|||
55
АЛьФ
11.05.18
✎
10:08
|
Значит так. Зашил в создание шрифта формулу из (23). Эх, полетят у народа шрифты...
Качать тут: https://yadi.sk/d/X9nusoEy3VhwGS Попутно: там есть новый метод Сервис::ПоказатьКалендарь(<Дескриптор>, <Дата>). Открывает встроенный календарь для выбора даты. <Дескриптор> - дескриптор окна, к которому привязывается выбор. <Дата> - переменная, содержащая начальную дату при выборе и в которую возвращается выбор. Пример: НоваяДата = ТекущаяДата(); атр = СоздатьОбъект("АтрибутФормы"); атр.УстановитьАтрибут(Форма, "кнКалендарь"); Если глСервис.ПоказатьКалендарь(атр.Дескриптор, НоваяДата) = 1 Тогда Сообщить(НоваяДата); КонецЕсли; |
|||
56
Злопчинский
11.05.18
✎
12:03
|
обновил Formex - поменялись шрифты... сейчас проверим..
во, уже поближе к правде... в тестовой обработке при задании размера 20 и снятия скриншота - строчная "е" в надписи имеет высоту 15 пикселей - строчная "е" в ТЗ имеет высоту 12 пикселей |
|||
57
Злопчинский
11.05.18
✎
12:05
|
ой, соврал. в (56) - не читать
|
|||
58
АЛьФ
11.05.18
✎
12:19
|
2(57) Точного совпадения в любом случае не будет. Т.к. неизвестно как создает шрифт 1С для отрисовки. Если надо получить вот прям один в один, то вешаешь на форму текстовый реквизит, в котротом устанавливаешь нужный шрифт и пишешь:
РасшФормы.ПолучитьАтрибут("ТЗФорма").Шрифт = РасшФормы.ПолучитьАтрибут("тТест").Шрифт; |
|||
59
Злопчинский
11.05.18
✎
12:28
|
Потестил (корректно отрабатывает даже для размера = 0 ;-)
Для шрифта крупного размера совпадение практически 1-в-1 для мелких - расхождения. например для 10 - в ТЗ выглядит ~6 |
|||
60
АЛьФ
11.05.18
✎
12:29
|
2(59) 0 - это размер по умолчанию. Отрицательно значение - это без учета полей (чуть больше будет шрифт).
|
|||
61
Злопчинский
11.05.18
✎
12:33
|
(60) вот только что обнаружил, до твоего этого поста - что если задать отрицательное значение - то получается ваще няшно!
размер = -10 - совпадает визуально с размером текстового реквизита с таким шрифтом назначенным штатно через свойства! отправил на почту поправленную тестовую обработку |
|||
62
Злопчинский
11.05.18
✎
12:33
|
Можешь ее положить на яндекс-диск - пусть народ забирает для подбора шритфа
|
|||
63
Злопчинский
11.05.18
✎
12:41
|
@АЛьФ - крут! раз! и проблема решена. четко и понятно.
не то что эти восьмерочники... |
|||
64
АЛьФ
11.05.18
✎
12:55
|
2(63) На самом деле редкость. Праздничная неделя, работать не охота :)
|
|||
65
Злопчинский
11.05.18
✎
13:00
|
(64) То есть тебе нужен волшебный пендель? ;-)
|
|||
66
АЛьФ
11.05.18
✎
13:19
|
2966) А то!
|
|||
67
Злопчинский
11.05.18
✎
13:44
|
(66) я записал...
|
|||
68
Злопчинский
13.05.18
✎
23:25
|
@АЛьФ, а можно как-то в ТЗ убрать строку заголовков столбцов?
|
|||
69
АЛьФ
14.05.18
✎
09:38
|
2(68) РасшФормы.ВысотаЗаголовкаТаблицы("ТЗФорма", 0);
|
|||
70
Злопчинский
14.05.18
✎
10:44
|
(69) Спасибо.
работает. раньше пробовал - были какие-то траблы. сейчас - отлично. |
|||
71
Злопчинский
14.05.18
✎
11:04
|
(69) А можно ли как-то убрать вправый (вертикальный) скролл-бар?
|
|||
72
АЛьФ
14.05.18
✎
11:43
|
2(71) Можно попробовать через стили. Но тут я с ходу не подскажу.
|
|||
73
Злопчинский
14.05.18
✎
11:54
|
(72) А волшебный пендель...?! ;-)
будет возможность - посмотри на досуге |
|||
74
trdm
14.05.18
✎
12:00
|
(73) Через стиль вполне себе получается.
|
|||
75
trdm
14.05.18
✎
12:02
|
WS_VSCROLL убираешь и радуешся.
|
|||
76
Злопчинский
14.05.18
✎
12:05
|
(75) я не пргрграммер. я девЕлопер ;-)
мне нужно типа РасшФормы.ВертикальныйСкроллбар("ТЗформа",-1); //убрать скролл бар РасшФормы.ВертикальныйСкроллбар("ТЗформа",1); //показать скролл бар |
|||
77
Злопчинский
15.05.18
✎
15:43
|
И шо? и тишина... и только зомби с косами(зачеркнуто) клюшками стоят...
|
|||
78
АЛьФ
15.05.18
✎
15:54
|
2(77) РасшФормы.ПолучитьАтрибут("ТЗФорма").ИзменитьСтиль(2097152);
|
|||
79
Злопчинский
15.05.18
✎
19:23
|
(78) А откуда брать волшебные числа, которые в скобочках?
|
|||
80
Злопчинский
15.05.18
✎
19:41
|
(78) Попробовал. Бьюсь в экстазе пацтулам! То что надо. А я столько лет мучился...
|
|||
81
Злопчинский
15.05.18
✎
19:42
|
(78) А как показать скроллбарр обратно?
|
|||
82
Djelf
гуру
15.05.18
✎
20:22
|
(81) Есть обработка от alyuev: http://www.1cpp.ru/forum/YaBB.pl?num=1345736013
|
|||
83
Злопчинский
15.05.18
✎
22:03
|
(82) О, спасибочки, а то я только хотел спросить как менять стил линий разлиновки ТЗ - может найду если покопаюсь
|
|||
84
Злопчинский
16.05.18
✎
00:31
|
(83) ... не нашел...
|
|||
85
trdm
16.05.18
✎
00:52
|
(83) этот контрол просто так не сдастся.
|
|||
86
АЛьФ
16.05.18
✎
09:48
|
2(83) Вот этого уже не изменить. Если нужны такие извраты, то лучше свой грид какой-то сделать или готовый найти.
|
|||
87
Злопчинский
16.05.18
✎
21:59
|
(86) понятно, сдулись.. ;-)
но раз нет, то нет - эта хотелка уже действительно из праздела извртов ;-) |
|||
88
botman4
16.05.18
✎
22:49
|
(34) Как ты такое делаешь? Это магия? ))
как ты спрятал все реквизиты? расскажи ) |
|||
89
trdm
16.05.18
✎
22:53
|
(87) не ну возможно все на этом свете, но какой ценой...
|
|||
90
Попытка1С
16.05.18
✎
22:56
|
(88) Блокнотом
|
|||
91
botman4
16.05.18
✎
23:00
|
(90) можно чутка подробнее?
Пожалуйста ) |
|||
92
Попытка1С
16.05.18
✎
23:08
|
(91) Через блокнот правит нужные параметры прямо в ert шке.
|
|||
93
botman4
16.05.18
✎
23:09
|
(92) после сохранения не открывается. ругается на неправильный формат файла.
Нужно удалить слой походу на котором расположен реквизит. |
|||
94
Попытка1С
16.05.18
✎
23:14
|
(93) Ну там не все так топорно) Я уже на память не помню, давно было, но описание формата где то проскакивало.
|
|||
95
Попытка1С
16.05.18
✎
23:15
|
Еще была альтернативная среда разработки для 7.7 тоже умела всякие штуки делать.
|
|||
96
botman4
16.05.18
✎
23:21
|
(95) пробовал в Интелегенте, валится с ошибкой.
Получилось открыть файл в 7-zip, но что делась с этими файлами пока не догнал ) |
|||
97
botman4
17.05.18
✎
00:07
|
Ха, получилось )))
Visual gcomp |
|||
98
Злопчинский
18.05.18
✎
17:50
|
(86) Альф,
а вот можно ли такую фишку провернуть, типа -я хочу определять размер страницв ТЗ - то есть сколько строк в ТЗ вмещается в видимую часть ТЗ. то есть типа ТЗФорма.РазмерСтраницы() - возвращает количество строк видимой на экране визуальной формы ТЗ (независимо есть записи в ТЗ или нет). и например если я на тЗ назначил шрифт, то беру и и снова делаю ТЗФорма.РазмерСтраницы() - и получаю новое количество ????? |
|||
99
Злопчинский
18.05.18
✎
17:58
|
Альф и иже с ним спецы:
позарез хочется автомасштабирование текста . например, есть форма. на нее положили "Текст". В тексте вызываем функцию и хочется чтобы текст, возвращаемый этой функцией, автомасштабировался в текстовый контрол (тот который буквочка Т) т.е. хочется иметь некий механизм для начала типа хотя бы ФункцияОценкаВлазения(Форма.тКонтрол,СтрокаКакоготоТекста) - возвращает 1 если СтрокаКакоготоТекста полностью влазит/отображается в тКонтрол и 0 - если не влазит (то есть часть текста не будет видан на форме) ??????? вот эта фигня ну капец как хочется. как смасштабировать текстпри выводе печатной формы чтобы он вмещался в ячейку фиксированного размера - я знаю (независимо от шрифта и прочего). но вот как такую же хрень провернуть для текстовогоКонтрола на форме... хочется иметь ме |
|||
100
Масянька
18.05.18
✎
18:00
|
Соточка.
|
|||
101
Злопчинский
19.05.18
✎
17:39
|
Ап
|
|||
102
АЛьФ
21.05.18
✎
10:58
|
2(98) Есть метод РасширениеФормы::ПолучитьКоординатыЯчейки(). С помощью него и вычисления координат контрола самой ТЗ можно вычислить количество видимых строк.
2(99) Эмпирически вычислить коэффициент нужного шрифта относительно экранных размеров контрола. Будет самым простым. |
|||
103
Злопчинский
21.05.18
✎
11:37
|
(102)
по (98) учтем по (99) много шрифтов и вариантов (болд, италик). вдобавок зависит от возможности переноса строк на пробелах. короче: не пойдет ибо слишком муторно |
|||
104
АЛьФ
21.05.18
✎
12:01
|
2(103) Не вопрос. Предложи другое решение.
|
|||
105
Злопчинский
21.05.18
✎
12:19
|
(104) умный какой... ;-) спрашивал бы я если бы знал другое приемлемое решение...
|
|||
106
Злопчинский
21.05.18
✎
12:19
|
(104) вариант-то есть, менее геморный, но интерфейсно неподходящий и тормозной
|
|||
107
Sserj
21.05.18
✎
12:23
|
Ксати АЛьФ а чем закончилась история с разработкой переноса больших баз в SQL?
Удалось победить или так и осталось в состоянии выгружается, но при загрузке ругается? |
|||
108
Злопчинский
21.05.18
✎
12:30
|
Кстати, 133 релиз Formex'а имхо работает как-то устойчивее чем предыдущий какой я использовал. По крайней мере у этого нет глюков (пока не наталкивался) с "неотработкой" ПослеОткрытия - на старом формексе регулярно были ситуации когда ПослеОткрытия как-то не так отрабатывал, сейчас - все ожидаемо. Но пока точно непонятно, ибо сейчас разработку веду на домашнем компе, а ранее - на серваке...
|
|||
109
АЛьФ
21.05.18
✎
12:36
|
2(107) Пока осталось в таком состоянии. Если клюнет жареный петух на работе, буду срочно доделывать.
|
|||
110
АЛьФ
21.05.18
✎
12:36
|
2(105) Воооот...
2(106) Так озвучь, может чего покумекаем сообча. |
|||
111
Злопчинский
21.05.18
✎
12:51
|
(110) автоподбор шрифта можно выполнить без особых проблем в печатной форме. Например, я так подбираю шрифт для печати всяких складских этикеток, используя тестовый вывод и КоличествоСтраниц().
Может на форму положить некое "текстовое" поле типа Йокселем табличный документ или ТЗ из одной строки с возможностью переноса строки в ячейке ТЗ (такое есть?) - и ширину такого объекта сделать "равной" ширине текстового контрола и выводить в такой контрол текст и смотреть высоту получившейся конструкции (высоту ячейки ТЗ или ячейки Йокселя) и сравнивать ее с размером текстовго контрола...? |
|||
112
Djelf
гуру
21.05.18
✎
14:51
|
(111) Йоксель на форму не обязательно.
Да, так сработает - автоширина области и подбор шрифта, сначала грубо коэффициентом, потом можно точнее. Только все равно как то оно для шрифтов больше 14 не правильно считает... |
|||
113
АЛьФ
21.05.18
✎
15:50
|
А может проще будет поискать ActiveX какой-нибудь вместо текста?
|
|||
114
Злопчинский
21.05.18
✎
16:36
|
(113) какой?
|
|||
115
trdm
21.05.18
✎
16:41
|
(109) Ну, dat-файл - это просто текст. Его парсить и выполнять, думаю там работы не особо много.
|
|||
116
Злопчинский
21.05.18
✎
16:43
|
(112) то есть ты предлагаешь примерно так:
1. имеем форму с контролом "Текст" ширины Текст.Ш и высоты Текст.В 2. пристегиваем к форме таблицу Таб с единственной секцией и единственной ячейкой, автовысота=1, автоперенос=1 3. Выводим Таб, в нее секцию (без показа на экран) 3. Считываем ширину Текст.Ш 4. Устанавливаем ширину столбца Таб = Ш 5. Выводим в Таб наш произвольный текст 6. Считываем получившуюся высоту секции таблицы (как? и без вывода на экран сработает? 7. Сравниваем высоту секции с Текст.В 8. Если п.7 не удовлетворяет - меняем размер шритфа в выведенной секции и см. снова с п.6 9. Если удовлетворяет - имеем примерный достаточно точный размер шрифта и назначаем его на Текст на форме - так? |
|||
117
Djelf
гуру
22.05.18
✎
09:14
|
(116) Да, примерно так. В йокселе расчеты сработают и без показа на экран.
Но как я и говорил считает как то не совсем точно. В коде все строго по mfc, я проверял. Но и excel точно так же (по виду) считает. |
|||
118
Djelf
гуру
22.05.18
✎
09:25
|
А вот пример реализации подбора размера на mfc: https://stackoverflow.com/questions/29825498/sizing-font-to-fit-in-a-rectangle
Примерно то же самое и на йокселе получится. |
|||
119
Злопчинский
22.05.18
✎
19:03
|
(118) ок. попробую.
а как соотносится высота текстовго контрола на форме и высота ячейки таблицы йокселя? 1-к-1..? |
|||
120
Djelf
гуру
22.05.18
✎
19:19
|
(119) Увы, в твипах! http://yoksel.net.ru/Ob'ektyVstroennogoJazyka/Oblast'TablichnogoDokumenta/Rasschitat'Razmery
Но пересчитать не сильно сложно https://ru.wikipedia.org/wiki/Твип подогнать коэффициент чтобы чуток с запасом влезало и, имхо, срастется. |
|||
121
MadDAD
24.05.18
✎
10:34
|
(98)
Функция ВидимыхСтрокТЗ(ИмяТЗ, Форма) Высота = 0; Верх = 0; Низ = 0; РасшФормы = СоздатьОбъект("РасширениеФормы"); РасшФормы.УстановитьФорму(Форма); РасшФормы.ПолучитьАтрибут(ИмяТЗ).ПолучитьКоординаты(0, 0, 0, Высота); РасшФормы.ПолучитьКоординатыЯчейки(ИмяТЗ, 1, 1, верх, 0, Низ, 0, 0); Высота = Высота - 7; ВысотаСтроки = Низ - Верх + 1; КоличествоСтрок = (Высота - ВысотаСтроки) / ВысотаСтроки; Возврат КоличествоСтрок; КонецПроцедуры |
|||
122
Злопчинский
25.05.18
✎
17:57
|
(121) А количество строк многострочной части списка (журанала, списка справочника, ТЧ документа) - получить так можно?
|
|||
123
Злопчинский
25.05.18
✎
18:05
|
(121) а что за волшебный оператор (остальное понятно)
Высота = Высота - 7; ??? |
|||
124
Злопчинский
25.05.18
✎
18:13
|
(121) считает в целом вроде норм... даже для многострочных ТЗ (устанавливаемых через формекс)
но.. вот например выдается такая цифра 18:10:51: после открытия: количество строк = 5.02083333333333333333 . здесь как бы понятно.. для точного значения можно добавить 0.5 и взять ЦЕЛ . а вот если получится, например, = 4.98 - это неточно посчиталось (можно принять как 5) или действительно влазит полностью всего 4 строки..? |
|||
125
MadDAD
28.05.18
✎
08:22
|
(124)
"Высота = Высота - 7;" пояивлось после того как я взял экранную линейку и сравнил в пикселях то что возвращает РасшФормы.ПолучитьАтрибут(ИмяТЗ).ПолучитьКоординаты(0, 0, 0, Высота) и то что я вижу на линейке. Разница в 7 пикселей, за счет рамок, теней и чего-то еще. Если получиться 4.98, это будет означать что ячейка будет видна почти полностью, но текст в ней не отрисован, т.к. 1С считает что, он не влез. Т.е. по факту это 4 с текстом. Так что самый правильный вариант брать Цел() |
|||
126
MadDAD
28.05.18
✎
08:24
|
(122) А тут хз, не пробовал. Если получится с многострочной частью работать как с ТЗ, то думаю, получится
|
|||
127
Злопчинский
17.06.18
✎
19:45
|
@Альф, на dorex.pro лежит 131 версия, а у меня внезапно 133 обнаружилась.. это верно, что 133 есть уже?
|
|||
128
Злопчинский
19.06.18
✎
14:33
|
Правильные размеры шрифтов дает 133
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |