VB 6: Сколько элементов управления я могу иметь на одной форме? - PullRequest
6 голосов
/ 28 июня 2010

Я знаю, что ограничение для именованных элементов управления составляет 254, кроме того, вы должны использовать массивы элементов управления.Но, похоже, мы достигли предела и для массивов.Есть идеи, что это за абсолютный предел?

Ответы [ 2 ]

7 голосов
/ 29 июня 2010

Не существует абсолютного предела. Если вы поместите достаточно элементов управления в форму, вам в конечном итоге не хватит памяти. Я сделал тестовое приложение, которое загружает кнопки команд в массив управления. Мой первый запуск остановился с ошибкой «Недостаточно памяти» на отметке около 6900 кнопок. Я закрыл несколько других приложений и смог загрузить почти 8200. Я сделал то же самое с текстовыми полями и получил разные результаты (около 7300 до и 8600 после). Различные элементы управления занимают разные объемы памяти, поэтому на самом деле невозможно указать точное количество элементов управления, которые можно поместить в форму.

1 голос
/ 28 июня 2010

У нас есть система управления записями, написанная на VB6, и существует руководство для пользовательского интерфейса, в котором говорится, что с каждой записью должна быть связана только одна форма ввода данных (то есть не может открываться другие окна).В результате этой политики один из более сложных типов записей в нашей системе теперь имеет форму с 659 отдельными элементами управления.Мы столкнулись с ограничением в 256 именованных элементов управления, а затем со временем преобразовали многие из элементов управления в массивы элементов управления.Недавно мы освободили место для 5 или 6 новых элементов управления, пройдя всю форму и преобразовав несколько оставшихся автономных элементов управления в массивы элементов управления.

Это один раз, когда я хотел бы нарушить правила, но этопотребовалось бы немало рефакторинга для использования подхода с несколькими формами.

В любом случае вы можете разместить на форме не менее 659 элементов управления, но я так и не смог выяснить, каков истинный абсолютный пределесть (и я не уверен, что хочу).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...