|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
|
Динамическое создание формы с CommandButton в несколько столбцов15.07.2020, 13:49. Показов 6256. Ответов 71
Метки нет (Все метки)
Добрый день, уважаемые форумчане! Строго не судите, в VBA я полный "ноль", но пытаюсь сделать небольшую программку. Пытался слепить из разных вариантов на этом и других форумах, многое, что получилось, но застрял на одном вопросе. Суть вопроса: есть некие данные, которые подразделяются на группы. По выбору группы нужно создать динамически форму с кнопками, что бы они были не в один столбец, а в два или три, или более, то есть распределить по всей форме. Количество кнопок зависит от количества данных в группе, их может быть и три, и сто. Вроде понятно объяснил. Файл-пример в приложении. Если сможете помочь, буду очень благодарен.
0
|
|
| 15.07.2020, 13:49 | |
|
Ответы с готовыми решениями:
71
Динамическое создание столбцов Динамическое создание таблицы из нескольких столбцов
|
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
||
| 15.07.2020, 18:52 [ТС] | ||
|
Спасибо, сейчас попробую.
Добавлено через 2 минуты КостяФедореев, Спасибо, сейчас попробую. Добавлено через 10 минут ).
0
|
||
|
Часто онлайн
987 / 637 / 280
Регистрация: 09.01.2017
Сообщений: 2,080
|
|
| 15.07.2020, 18:58 | |
|
Alexey1974, что важней ширина или высота формы?
0
|
|
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
|
| 15.07.2020, 19:01 [ТС] | |
|
КостяФедореев, Высота может быть стабильная, а ширина увеличиваться или уменьшаться.
0
|
|
|
Часто онлайн
987 / 637 / 280
Регистрация: 09.01.2017
Сообщений: 2,080
|
||||||
| 15.07.2020, 19:53 | ||||||
|
Alexey1974,
В модуль формы
1
|
||||||
|
1847 / 1162 / 354
Регистрация: 11.07.2014
Сообщений: 4,107
|
|
| 15.07.2020, 19:54 | |
|
Alexey1974, идея с созданием программно формы, как мне кажется (и не только мне) не очень удачная. Вам всё равно придется считать высоту и ширину формы по какому-то алгоритму. Если у вас будет уже созданная форма (вручную), то этот расчет можно поместить в файл инициализации этой, уже имеющейся, формы. И в неё можно заранее поместить "стационарные"кнопки. Размеры можно менять в любое время.
0
|
|
|
Часто онлайн
987 / 637 / 280
Регистрация: 09.01.2017
Сообщений: 2,080
|
|
| 15.07.2020, 19:54 | |
|
Все меняется, примерно стремится к квадрату
0
|
|
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
|
| 15.07.2020, 20:00 [ТС] | |
|
Спасибо всем. Не понимал как это можно сделать со стационарной формой. Конечно прислушаюсь к профессионалам. Завтра буду тестировать, сегодня уже мозг закипает от такого количества новой информации. Еще раз огромное спасибо, завтра отпишусь.
0
|
|
|
Часто онлайн
987 / 637 / 280
Регистрация: 09.01.2017
Сообщений: 2,080
|
|
| 15.07.2020, 20:02 | |
|
Alexey1974, Вы поведайте, что изобретаете, так мы может и алгоритм подскажем правильный.
0
|
|
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
|
| 15.07.2020, 20:21 [ТС] | |
|
КостяФедореев, Хорошо, спасибо, завтра постараюсь понятно сформулировать идею, а то сейчас пишу и сам не понимаю, что пишу
.
0
|
|
|
128 / 64 / 14
Регистрация: 29.03.2015
Сообщений: 265
|
|
| 16.07.2020, 02:27 | |
|
Alexey1974, сваял пример, на основе вашего файла, правда форма статичная, посмотрите
0
|
|
|
128 / 64 / 14
Регистрация: 29.03.2015
Сообщений: 265
|
||||||||||||||||
| 16.07.2020, 02:37 | ||||||||||||||||
|
В файле есть:
1 лист с данными и рисованной кнопкой 1 модуль Кликните здесь для просмотра всего текста
2 класса Кликните здесь для просмотра всего текста
1 форма Кликните здесь для просмотра всего текста
0
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
||
| 16.07.2020, 09:32 [ТС] | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
|
| 16.07.2020, 09:34 [ТС] | |
|
anton-sf, Спасибо, попробовал Ваш вариант, появляется ошибка. Скрин прикрепил.
0
|
|
|
Часто онлайн
987 / 637 / 280
Регистрация: 09.01.2017
Сообщений: 2,080
|
||||||
| 16.07.2020, 09:48 | ||||||
|
Alexey1974,
1
|
||||||
|
128 / 64 / 14
Регистрация: 29.03.2015
Сообщений: 265
|
||||||||||||
| 16.07.2020, 09:58 | ||||||||||||
Alexey1974, в модуле формы, в процедуре Private Sub ComboBox1_Change(), нужно заменить код в цикле Кликните здесь для просмотра всего текста
В целом всё неплохо выглядит пока данные одинаковой длинны, но не представляю как это будет выглядеть при данных очень разной длинны
1
|
||||||||||||
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
|
| 16.07.2020, 10:05 [ТС] | |
|
КостяФедореев, Отлично, спасибо. В моем случае это не принципиально, но может для кого-то важно будет, в этом варианте при создании одной кнопки на форме ее не видно. Еще раз большое спасибо за помощь.
0
|
|
|
0 / 0 / 0
Регистрация: 09.07.2020
Сообщений: 24
|
||
| 16.07.2020, 10:49 [ТС] | ||
|
0
|
||
|
128 / 64 / 14
Регистрация: 29.03.2015
Сообщений: 265
|
|||||||||||||||||||||
| 16.07.2020, 11:02 | |||||||||||||||||||||
|
Alexey1974, эта ошибка появилась потому что вы закрыли форму не выбрав значение
![]() Замените
В целом это пример, вам всё равно нужно дорабатывать его под свои нужды
0
|
|||||||||||||||||||||
|
Часто онлайн
987 / 637 / 280
Регистрация: 09.01.2017
Сообщений: 2,080
|
|
| 16.07.2020, 11:03 | |
|
Alexey1974, и думаю надо поставить ограничение на количество кнопок, если их будет больше 1000, то форма не влезет на экран.
0
|
|
|
2753 / 1727 / 779
Регистрация: 23.03.2015
Сообщений: 5,452
|
|
| 16.07.2020, 11:05 | |
|
Интуиция подсказывает, что проблему можно было бы решить совершенно по другому...
Но суть проблемы - под строжайшим секретом. И надеюсь увидеть решение для 500 кнопок на форме для 15" экрана , исходя из вышеизложенных методов решения... Интригует....
0
|
|
| 16.07.2020, 11:05 | |
|
Динамическое создание столбцов DataGrid-а журнального вида Динамическое создание формы
Динамическое создание формы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг.
Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует.
В процессе разработки. . .
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|