Большая форма

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
None of the above
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.05.2004 (Пн) 10:46

Большая форма

Сообщение None of the above » 24.05.2004 (Пн) 10:49

Есть форма на VB, большая. На форме лежит Tabbed Dialog, на каждой из вкладок этого диалога - таблица, десяток полей для ввода, еще с десяток кнопок. Плюс надписи на форме, ... в общем за предел в 256 элементов на контейнер я давно перешагнул, приходится обходиться массивами элементов.

До сих пор все работало как часики, но потребовалось еще добавить дополнительное меню. После добавок приложение перестает транслироваться в исполняемый код, падает на команде Load при загрузке одной из дополнительных форм. Причем (!) в самой среде VB все работает нормально, а вот при создании exe-шника,... упс-с-с...

Насколько я понимаю VB не совсем предназначен для создания настолько объёмных монолитных форм, начиная с какого-то уровня сложности полезли глюки. Бывает.

Теперь собственно вопрос - как все это хозяйство можно "порезать" на куски с минимальными потерями? Как обеспечить возможность быстрого переключения между формами, имеющими одинаковый размер, общее меню и поддерживающими синхронный ресайзинг?

Надеюсь найдутся бойцы, уже решавшие подобную проблему.


--
Удачи,
Дмитрий.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 24.05.2004 (Пн) 11:03

Что-то мне этот подход подозрительно напоминает мою предыдущую работу :evil: . Там та же идеология применялась, и в конце концов тоже полезли глюки на этапе компиляции.

Ну, как вариант - MDI. Не скажу, что отделаешься малой кровью, но этот интерфейс гораздо более масштабируем. Все остальное - либо титанических усилий стоит, либо гораздо менее понятно, для конечного юзера в том числе.

soljen
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 69
Зарегистрирован: 06.05.2004 (Чт) 15:47
Откуда: Из темноты...

Сообщение soljen » 24.05.2004 (Пн) 11:09

Привет!

У нас в проекте есть что-то подобное! Глюков пока ещё нет, но ... форма огромная, на 15"-дюймовке не влазит на экран!!! :(

Мы пробовали решать этот вопрос так: разбили все контролы на группы по функциональности, и раскидали на дополнительные формы!

Правда теперь пользователям не совсем удобно.... жалуются на изменения... но постепенно привыкают!

PS: теперь грузится всё это хозяйство быстрее, но не так как хотелось бы! :(

Удачи None of the above!!!
Тиха украинская ночь, но сало надо перепрятать...
(R)Jeka

None of the above
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.05.2004 (Пн) 10:46

Сообщение None of the above » 24.05.2004 (Пн) 20:55

Ennor писал(а):Что-то мне этот подход подозрительно напоминает мою предыдущую работу :evil: . Там та же идеология применялась, и в конце концов тоже полезли глюки на этапе компиляции.


Мне повторяемость такого стиля построения интерфейсов не кажется удивительной, достаточно удобно так делать.

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


Да, про MDI я уже думал. Пожалуй это первое, что приходит в голову. Но появляется ощущение, что общий дизайн как-то... распадается, что ли.

Насколько масштабируемым становится интерфейс? В терминах количества форм/контролов/мегабайт кода/etc.?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 25.05.2004 (Вт) 9:17

А если компилировать не со среды, а с командной строки, глюки сохраняются?
Lasciate ogni speranza, voi ch'entrate.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 25.05.2004 (Вт) 9:49

None of the above писал(а):...
Мне повторяемость такого стиля построения интерфейсов не кажется удивительной, достаточно удобно так делать.

Но не тогда, когда после полугода работы над такой программой тебя банально тошнит при взгляде на этот кошмар :evil: .
Насчет масштабируемости - думаю, что основное ограничение будет со стороны системы, по памяти. Может, у VB и есть ограничение на максимальную сложность одного ЕХЕ, но я на такое пока не натыкался, а у нас там были модули и по 9 метров. Тут вопрос не так надо ставить, тут надо спрашивать "Каков максимальный размер гарантированно стабильного ехе-шника?" В смысле, не вообще безглючного, а не имеющего глюков самого рантайма. Вот это, я понимаю, вопрос...

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 25.05.2004 (Вт) 9:51

Можно просто содержимое вкладок диалога перекинуть в UserControl-ы с одинаковым интерфейсом. И при переключении вкладки динамически добавлять/удалять эти контролы (а можно и не удалять -это в принципе уже по желанию). У меня так был реализован один проект где заказчик хотел кучу вкладок с большим количеством контролов - все нормально работало, мин не было.
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

None of the above
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.05.2004 (Пн) 10:46

Сообщение None of the above » 25.05.2004 (Вт) 10:06

alibek писал(а):А если компилировать не со среды, а с командной строки, глюки сохраняются?


Как показало вскрытие глюки исчезают, если скомпилировать сначала в P-Code, а потом опять в "нормальный" ехе-шник.

Грустно то, что эта хрень опять вылезет в самый неподходящия момент :(. Вылезет, куда ж она денется?

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 25.05.2004 (Вт) 21:48

У меня похожая проблема, т.е. на MDIформе содержится много элементов, и много меню. Добавить в режиме дизайна на форму уже ничего нельзя. Иногда приходится что-то удалять, если это не используется. Может быть где-нибудь можно подправить какую-либо цифирь в реестре, чтобы увеличить максимальное количество контролов?

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 25.05.2004 (Вт) 22:04

Виноват, форма обычная, переход на MDI только планируется.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing-бот, PetalBot и гости: 2

    TopList  
cron