Добрый день, создаю программно множество кнопок допустим 20, на форме создаю группу страницы в нее помещаю группу страница и уже в ней создаю все эти кнопки, но проблема в том что эти 20 кнопок должны на форме быть по 4 вряд, как на уф сделать привязку чтоб были по 4 вряд? сейчас или все вертикально создаются или горизонтально без переноса. Так же делал обычную группу.
1кн 2кн 3кн 4кн тут перенос как сделать? игрался с положением в группе ничего не вышло
5кн 6кн 7кн 8кн
1кн 2кн 3кн 4кн тут перенос как сделать? игрался с положением в группе ничего не вышло
5кн 6кн 7кн 8кн
По теме из базы знаний
- Как выиграть сражение с документом УПП "Расчет себестоимости" (продолжение)
- МХ-20 Универсальный для БП 3.0 (УФ). Для любых счетов с субконто "Номенклатура"
- Дебиторская задолженность по месяцам (контрагенты, номенклатурные группы)
- Планирование в группе компаний
- Расширение: Быстрые отборы через буфер [Alt+C] Копировать список, [Alt+V] Вставить список, [Ctrl+C] Копировать из файлов
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) как указать что в одной строке 4 шт? горизонтальные делаю, без отображения делаю.
мКнопка = Элементы.Добавить("КнНоменклатура"+НаименованиеКнопки, Тип("КнопкаФормы"), Элементы.ГруппаНоменклатур);
мКнопка .Вид = ВидКнопкиФормы.ОбычнаяКнопка;
мКнопка .ИмяКоманды = "КнопкаНоменклатуры_Нажатие";
мКнопка .Ширина = мКнопкаНоменклатура_Ширина;
мКнопка .Высота = мКнопкаНоменклатура_Высота;
мКнопка .Заголовок = ЗаголовокКнопки;
мКнопка .Шрифт = мКнопкаНоменклатура_Шрифт;
Показать
(3)
Странный вопрос. Создайте группу, добавьте в нее 4 кнопки. Тут нечего узнавать. Или вопрос в том, поместятся ли они? Если не поместятся в горизонтальной группе, то будут обрезаны визуально. Если группа горизонтальная по возможности, то перейдут на следующий ряд.
как указать что в одной строке 4 шт?
Странный вопрос. Создайте группу, добавьте в нее 4 кнопки. Тут нечего узнавать. Или вопрос в том, поместятся ли они? Если не поместятся в горизонтальной группе, то будут обрезаны визуально. Если группа горизонтальная по возможности, то перейдут на следующий ряд.
(6) Иииии....программно вы как их создаете? Как понимаете, что вам нужно 50 а не 100?
При добавлении есть возможность вести счетчик созданных команд?
Вроде
При добавлении есть возможность вести счетчик созданных команд?
Вроде
УжеПоместил = 0;
ГруппаВКоторуюПомещаю = Элементы.Добавить("Группа" + Строка(УжеПоместил ), Тип("ГруппаФормы", Элементы.ГруппаНоменклатур));
Если Ужепоместил = 3 тогда
УжеПоместил = 0;
ГруппаВКоторуюПомещаю = Элементы.Добавить("Группа" + Строка(УжеПоместил ), Тип("ГруппаФормы", Элементы.ГруппаНоменклатур)),
КонецЕсли
мКнопка = Элементы.Добавить("КнНоменклатура"+НаименованиеКнопки, Тип("КнопкаФормы"), Элементы.ГруппаНоменклатур);
мКнопка .Вид = ВидКнопкиФормы.ОбычнаяКнопка;
мКнопка .ИмяКоманды = "КнопкаНоменклатуры_Нажатие";
мКнопка .Ширина = мКнопкаНоменклатура_Ширина;
мКнопка .Высота = мКнопкаНоменклатура_Высота;
мКнопка .Заголовок = ЗаголовокКнопки;
мКнопка .Шрифт = мКнопкаНоменклатура_Шрифт;
УжеПоместил = УжеПоместил +1;
Показать
(8) Это зачем 8 или 16?
Смысл:
1) Создать в группе страница группу с горизонтальной группировкой. Обозвать ее переменной - ГруппаВКоторуюПомещаю
2) Сделать переменную счетчик, которая будет считать сколько кнопок в эту группу уже засунули
3)Проверяете счетчик: Если = 4 тогда - тогда создаете заново ГруппаВКоторуюПомещаю с префиксом, обнуляете счетчик
Иначе Просто создаете кнопку с Родитель = ГруппаВКоторуюПомещаю, увеличиваете счетчик на 1
Смысл:
1) Создать в группе страница группу с горизонтальной группировкой. Обозвать ее переменной - ГруппаВКоторуюПомещаю
2) Сделать переменную счетчик, которая будет считать сколько кнопок в эту группу уже засунули
3)Проверяете счетчик: Если = 4 тогда - тогда создаете заново ГруппаВКоторуюПомещаю с префиксом, обнуляете счетчик
Иначе Просто создаете кнопку с Родитель = ГруппаВКоторуюПомещаю, увеличиваете счетчик на 1
(10) что то я уже совсем видимо запарился, можете программно написать? делаю так
но это не правильный подход, с группами что то путаю, совсем уже зациклился на этом
Если УжеПоместил = 4 Тогда
ГруппаВКоторуюПомещаю = Элементы.Добавить("Группа1" + Строка(НаименованиеГруппы), Тип("ГруппаФормы"), Элементы.ГруппаНоменкалтура);
КнопкаТест = Элементы.Добавить("КнНоменклатура"+НаименованиеКнопки, Тип("КнопкаФормы"), ГруппаВКоторуюПомещаю);
КнопкаТест.Вид = ВидКнопкиФормы.ОбычнаяКнопка;
КнопкаТест.ИмяКоманды = "КнопкаНоменклатуры_Нажатие";
КнопкаТест.Ширина = мКнопкаНоменклатура_Ширина;
КнопкаТест.Высота = мКнопкаНоменклатура_Высота;
КнопкаТест.Заголовок = ЗаголовокКнопки;
КнопкаТест.Шрифт = мКнопкаНоменклатура_Шрифт;
УжеПоместил = 0;
Иначе
КнопкаТест = Элементы.Добавить("КнНоменклатура"+НаименованиеКнопки, Тип("КнопкаФормы"), Элементы.ГруппаНоменкалтура);
КнопкаТест.Вид = ВидКнопкиФормы.ОбычнаяКнопка;
КнопкаТест.ИмяКоманды = "КнопкаНоменклатуры_Нажатие";
КнопкаТест.Ширина = мКнопкаНоменклатура_Ширина;
КнопкаТест.Высота = мКнопкаНоменклатура_Высота;
КнопкаТест.Заголовок = ЗаголовокКнопки;
КнопкаТест.Шрифт = мКнопкаНоменклатура_Шрифт;
УжеПоместил = УжеПоместил + 1;
КонецЕсли;
Показатьно это не правильный подход, с группами что то путаю, совсем уже зациклился на этом
(11)
УжеПоместил = 0;
ПрефиксГрупп = 0;
ГруппаВКоторуюПомещаю = Элементы.Добавить("Группа1" + Строка(ПрефиксГрупп), Тип("ГруппаФормы"), Элементы.ГруппаНоменкалтура);
Пока Выборка.Следующий() Цикл //тут сами как вы там получаете всех подчиненных к группе я хз
Если УжеПоместил = 4 Тогда
ПрефиксГрупп = ПрефиксГрупп + 1;
ГруппаВКоторуюПомещаю = Элементы.Добавить("Группа1" + Строка(ПрефиксГрупп), Тип("ГруппаФормы"), Элементы.ГруппаНоменкалтура);
УжеПоместил = 0;
КонецЕсли
КнопкаТест = Элементы.Добавить("КнНоменклатура"+НаименованиеКнопки, Тип("КнопкаФормы"), ГруппаВКоторуюПомещаю); //Как вы контролируете уникальность кнопок я хз
КнопкаТест.Вид = ВидКнопкиФормы.ОбычнаяКнопка;
КнопкаТест.ИмяКоманды = "КнопкаНоменклатуры_Нажатие";
КнопкаТест.Ширина = мКнопкаНоменклатура_Ширина;
КнопкаТест.Высота = мКнопкаНоменклатура_Высота;
КнопкаТест.Заголовок = ЗаголовокКнопки;
КнопкаТест.Шрифт = мКнопкаНоменклатура_Шрифт;
УжеПоместил = УжеПоместил + 1;
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот