Вычисление привязки контрола к Табу из SSTab

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Вычисление привязки контрола к Табу из SSTab

Сообщение SSecurity » 08.11.2008 (Сб) 19:17

Привет,

Возникла задача есть контрол SSTab (MS Tabbed Dialog Control 6.0) в нем три вкладки,
на первой один текстбокс, на второй - второй и на третей-третий (заказчик хочет шрифт побольше и размеры большие, а мне нравится небольшой размер окна :lol:, вот и делаю автомасштабирование)

Если пройтись по контролам формы, то те вкладки который щас скрыты минусуют от левой позиции контрола 75000, т.е. то что не видно лежит слева :)
Так вот допустим мы перебирая массив контролов нашли text2 у него left = -74000 (реальный 1000) но как определить, что text2 лежит на второй вкладке а не на третей?

Вариант внести список имен контролов вкладки рассматриваю (его пока реализовал), но каждый новый контрол на вкладке - новая проверка в коде, неужели нет способа проще?

С Уважением,
Сергей
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Вычисление привязки контрола к Табу из SSTab

Сообщение iGrok » 08.11.2008 (Сб) 20:18

SSecurity писал(а):Привет,

Возникла задача есть контрол SSTab (MS Tabbed Dialog Control 6.0) в нем три вкладки,
на первой один текстбокс, на второй - второй и на третей-третий (заказчик хочет шрифт побольше и размеры большие, а мне нравится небольшой размер окна :lol:, вот и делаю автомасштабирование)

Если пройтись по контролам формы, то те вкладки который щас скрыты минусуют от левой позиции контрола 75000, т.е. то что не видно лежит слева :)
Так вот допустим мы перебирая массив контролов нашли text2 у него left = -74000 (реальный 1000) но как определить, что text2 лежит на второй вкладке а не на третей?

Вариант внести список имен контролов вкладки рассматриваю (его пока реализовал), но каждый новый контрол на вкладке - новая проверка в коде, неужели нет способа проще?

С Уважением,
Сергей

На каждый таб кидать невидимый Frame. На Frame уже контролы. Тогда у тебя и позиции контролов будут "плюсовыми". Только фреймы будут улетать "в минус". Хотя я всю жизнь делал несколько по другому, пользуюясь ZOrder'ом у фреймов.. Может, в этом и есть какие-то изъяны, но так и проектировать удобнее.. )
label:
cli
jmp label

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Re: Вычисление привязки контрола к Табу из SSTab

Сообщение SSecurity » 08.11.2008 (Сб) 22:08

Ну я сделал практически так, но немного по другому:)

Поменял SSTab на TabStrip а страницы перекинул на фреймы и в обработчике клика разместил ..
Код: Выделить всё
  Select Case TabStrip1.SelectedItem.Index
    Case 1:
      xFrame1.Visible = True
      xFrame2.Visible = False
      xFrame3.Visible = False
    Case 2:
      xFrame2.Visible = True
      xFrame1.Visible = False
      xFrame3.Visible = False
    Case 3:
      xFrame3.Visible = True
      xFrame2.Visible = False
      xFrame1.Visible = False
  End Select


в итоге получилось вот что (см.вложение)
Вложения
orig100.gif
50% масштабирование
(37.65 Кб) Скачиваний: 40
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)


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

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

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

    TopList  
cron