Полосы прокрутки на форме

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

Полосы прокрутки на форме

Сообщение norml » 06.05.2003 (Вт) 9:29

У меня Visual Basic 6.0 и передо мной такая проблема: сделал форму под разрешение монитора 1024*768, а по окончании начальство мне сказало, что работать моя форма будет и на мониторах с разрешением 800*600. Переделывать ее уже времени нет. Можно ли как-нибудь сделать, чтобы на мониторах с 800*600 на форме появлялись полосы прокрутки (вообще-то я думал, что они сами должны появятся - не тут то было, сами не появились :-).

Как выйти из такой ситуации? Как сделать, чтобы юзеры с маленьким разрешением все-таки смогли всю форму увидеть?

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 06.05.2003 (Вт) 9:49

При загрузки формы пройдись по всем элементам формы и запиши им в TAG их координаты(Top,LEFT)
Поставь на форму две прокрутки и при изменении слайдера опять проходись по всем элементам вытаскиай из тага начальные координаты и отнимай сдвиг.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

norml
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 06.05.2003 (Вт) 9:17

Сообщение norml » 06.05.2003 (Вт) 10:07

Если я на форме справа и снизу нарисую прокрутки, то когда форма запустится на мониторе 800*600 эти прокрутки не будут видны. Если нарисовать их слева и сверху :cry: (как непринято в винде), то все равно края прокруток обрежутся и форма все равно будет иметь нетоварный, так сказать, вид.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 06.05.2003 (Вт) 10:19

Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

norml
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 06.05.2003 (Вт) 9:17

Сообщение norml » 06.05.2003 (Вт) 10:31

Боюсь, что если я на каком-нибудь чахленьком компьютере программно сменю разрешение на необходимое, то монитор просто погаснет (либо начнет мерцать) и юзер тогда вообще напишет на меня телегу (чего не хотелось бы, ессно).

А вот мне кажется, в дельфях (я не спец - не знаю точно, но кажется, что видел) есть элемент управления - ПАНЕЛЬ (или что-то в этом роде), которая обладает свойством автоматически включать полосы прокрутки если то, что на ней находится, не вмещается в область. Я могу ошибаться насчет этого, поскольку, опять же, не спец. Может, в VB есть что-нибудь подобное?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 06.05.2003 (Вт) 10:35

Сначала сделай как Sebas сказал. Только скроллбары сделай невидимые. Потом программно определяй текущее разрешение. Если оно меньше 1024, то уменьшай размеры формы и скроллбаров, и делай видимыми скроллбары.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 91

    TopList