Расположение контролов на форме

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Расположение контролов на форме

Сообщение Sirik » 02.02.2005 (Ср) 17:35

Допустим есть контрол (любой, например Text1 с индексом 0)

Такой функцией я добавляю ещё 40 элементов:
Код: Выделить всё
    Load Text1(I)
    Text1(I).Visible = True
    Text1(I).Top = Text1(I - 1).Top + Text1(I - 1).Height + 100


Естественно что все контролы не помещяются на форме

Теперь вопрос, как организовать прокручивание контролов на форме используя VScroll ?

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 02.02.2005 (Ср) 17:46

Приметивно но работает :lol:

Код: Выделить всё
Private Sub Form_Load()
HS.Value = Command1.Top
End Sub

Private Sub HS_Change()
Command1.Top = HS.Value
End Sub

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 02.02.2005 (Ср) 17:53

Я понимаю что таким методом, но какие Min и Max задать надо?

У меня стречаются случаи (кол. котролов) 36, 72, 18

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 02.02.2005 (Ср) 18:01

Методом "НАУЧНОГО ТЫКА" выбрать нужные параметры

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 02.02.2005 (Ср) 18:04

Я так и сделал!
Думал, что есть другой способ

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 02.02.2005 (Ср) 18:07

Ramzes писал(а):Методом "НАУЧНОГО ТЫКА"


Есть ещё "справочник СТЕЛЯ"

:D :D

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 02.02.2005 (Ср) 18:11

Igor_123 писал(а):
Ramzes писал(а):Методом "НАУЧНОГО ТЫКА"


Есть ещё "справочник СТЕЛЯ"

:D :D


Что это за справочник такой :?:

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 02.02.2005 (Ср) 18:20

Это когда сидя за столом, в поисках нужного значения, подымаешь голову вверх и видишь справочник СТЕЛЯ(потолок по украински)

:D

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 02.02.2005 (Ср) 18:28

Я как то сразу и не допер :oops: :lol:
Хотя сам украинец

Я сначала подумал " Кто такой этот Стель" :lol:

Cryonyx
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 292
Зарегистрирован: 12.11.2004 (Пт) 15:40
Откуда: Net_SubStream

Сообщение Cryonyx » 02.02.2005 (Ср) 18:31

А я бы сделал так:
Код: Выделить всё
Private Sub VScroll1_Scroll()
Dim I as Integer
for i=0 to text1.ubound
  text1(i).top=text1(i).top-vscroll1.value
next i
End Sub


По этому коду всё это дело будет подниматься вверх. А чтобы задать Max, делай так:
Код: Выделить всё
    Load Text1(I)
    Text1(I).Visible = True
    Text1(I).Top = Text1(I - 1).Top + Text1(I - 1).Height + 100
VScroll1.Max=text1(text1.ubound).top+text1(text1.ubound).height


По идее, должно работать :D
Если тебе не по сердцу мой путь,
Выбери сам или выбери с кем,
А мне по барабану вся эта муть -
Я не червонец, чтобы нравиться всем!
© К.Кинчев
--
Мой блог: щёлкай сюда

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 02.02.2005 (Ср) 18:39

господа не страдайте фигней :lol:
проще вставить эти контролы на picturebox2, который находится в picturebox1 и двигать его относительно 1 с помощью скролла

вот что-то вроде этого:
http://vbnet.mvps.org/code/forms/scrollviewport.htm


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

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

Сейчас этот форум просматривают: Yandex-бот и гости: 3

    TopList  
cron