SSTab

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

SSTab

Сообщение Чудик » 09.11.2004 (Вт) 11:21

Доброго дня.
Использую элемент SSTab в приложении. На каждой вкладке присутствует кнопка ОК (входящая в один масив кнопок ОК). Можно ли сделать все их одновременно со свойством Default=True? Так как при установке этого свойства у одной кнопки, оно становиться False у всех других.
Век живи - век учись!
www.detal-plast.narod.ru

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

Сообщение alibek » 09.11.2004 (Вт) 11:29

Нельзя.
Ты можешь поставить установку свойства Default в коде, в событии SSTab_Click.
Lasciate ogni speranza, voi ch'entrate.

Чудик
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 639
Зарегистрирован: 06.07.2004 (Вт) 12:18
Откуда: г. Егорьевск

SSTab

Сообщение Чудик » 09.11.2004 (Вт) 11:33

Жаль, сам не додумался.
Век живи - век учись!
www.detal-plast.narod.ru

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

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

А не проще обойтись одной кнопкой OK для всех вкладок?
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Чудик
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 639
Зарегистрирован: 06.07.2004 (Вт) 12:18
Откуда: г. Егорьевск

SSTab

Сообщение Чудик » 09.11.2004 (Вт) 11:59

Думаю, что нет. У меня на каждой вкладке заносится множество данных в БД. Каждая вкладка своя категория. Получается, что при общей ОК придется производить ряд ненужных операций над несколькими элементами с других вкладок, которые на данный момент не актуальны. Наверное, получается побольше гемороя, чем уже есть. Если нет - пишите.
Век живи - век учись!
www.detal-plast.narod.ru

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

Сообщение Andrey Fedorov » 09.11.2004 (Вт) 12:02

Думаю, что нет. У меня на каждой вкладке заносится множество данных в БД. Каждая вкладка своя категория. Получается, что при общей ОК придется производить ряд ненужных операций над несколькими элементами с других вкладок, которые на данный момент не актуальны.


Ну и что?

При нажатии на OK смотришь какая вкладка активна и в зависимости от этого действуешь. Простой Select Case вместо кучи кнопок...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Чудик
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 639
Зарегистрирован: 06.07.2004 (Вт) 12:18
Откуда: г. Егорьевск

SSTab

Сообщение Чудик » 09.11.2004 (Вт) 12:13

Согласен.
Век живи - век учись!
www.detal-plast.narod.ru

Чудик
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 639
Зарегистрирован: 06.07.2004 (Вт) 12:18
Откуда: г. Егорьевск

Сообщение Чудик » 09.11.2004 (Вт) 12:35

А как определить что нужная вкладка активна? Что-то не получается.
Век живи - век учись!
www.detal-plast.narod.ru

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

Сообщение Andrey Fedorov » 09.11.2004 (Вт) 12:46

А как определить что нужная вкладка активна? Что-то не получается.


Tab Property (SSTab Control)
Returns or sets the current tab for an SSTab control.
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

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

Сообщение Igor_123 » 09.11.2004 (Вт) 12:47

Я вообще использую TabStrip, но у меня однотипные данные. Поэтому диалог один, а в Tab есть свойство типа вариант в котором хранятся указатели на объекты. По Ок вынимается нужный объект из активной закладки и изменяются необходимые свойства. Даже без Select Case.
Т.е. сверху расположен TabStrip, а под ним один Frame с нужными контролами для ввода данных.

Чудик
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 639
Зарегистрирован: 06.07.2004 (Вт) 12:18
Откуда: г. Егорьевск

SSTab

Сообщение Чудик » 09.11.2004 (Вт) 12:48

Thank you.
Век живи - век учись!
www.detal-plast.narod.ru

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

Сообщение Andrey Fedorov » 09.11.2004 (Вт) 12:50

Я вообще использую TabStrip, но у меня однотипные данные.


Да все одно как - по крайней мере определить какая вкладка активна проблемы нет, как и выпольнить нужные операции именно для нее. Куча кнопок ОК тут явно не нужны...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Ruslan Demidow
Мужчина!
Мужчина!
Аватара пользователя
 
Сообщения: 987
Зарегистрирован: 25.03.2004 (Чт) 13:39
Откуда: N.Novgorod

Сообщение Ruslan Demidow » 09.11.2004 (Вт) 23:34

У меня немного по другому.
Создал в модуле формы переменую содержащую в себе пользовательский тип записи
например
Код: Выделить всё
Type ChangeDate
   Tab1 as Boolean
   Tab2 as Boolean
   Tab3 as Boolean
End Type

При открытии формы настроек я сбрасываю все поля этой записи в False.
При изменении любого из контролов, я устанавливаю , в зависимости от текущей закладки, нужное поле в True.
Кнопка "ОК" у меня одна. И когда пользователь нажимает её, я в процедуре принятия изменений пробегаюсь по полям этой записи и в зависимости от значения поля, применяю изменения настроек.
Это Ж-ж-ж-ж неспроста (с) Винни-Пух

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

Сообщение Ennor » 10.11.2004 (Ср) 1:05

Я делал так. Есть окно настроек, 6 закладок, на каждой не меньше 10-15 контролов (а то и больше, как с настройками шрифтов для подсветки кода). У каждого контрола на форме есть тэг. Внутри программы все настройки хранятся с специализированной коллекции, оптимизированной для работы с реестром. Ключом для элементов оной являются как раз тэги контролов. При нажатии на кнопку OK я пробегаю в цикле по всем контролам (For Each V in Me.Controls), там делаю небольшой If TypeOf V Is ... (действительно небольшой, всего 4 или 5 вариантов получилось), и имеющееся в контроле значение вне зависимости от того, изменилось оно или нет, сохраняю в коллекцию. По окончании этого процесса вызываю у коллекции метод Save, который таким же образом в цикле For Each пишет все свое содержимое в реестр. Так вот на K6-300 с 256 метрами памяти и 13-гиговым UDMA-33 фуджиком я времени сохранения данных не замечал, т.е. объективно это занимало не больше полсекунды.

Если найду, выложу исходники этого класса - вещь тогда получилась довольно универсальная...

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

Сообщение Andrey Fedorov » 10.11.2004 (Ср) 8:04

Я делал так. Есть окно настроек, 6 закладок, на каждой не меньше 10-15 контролов (а то и больше, как с настройками шрифтов для подсветки кода). У каждого контрола на форме есть тэг.


Ну почти все нормально - только тэг вроде ни к чему. И нормальный набор классов для этой цели реализуем.

Но сохранять можно значения только измененных контролов ибо определить это элементарно - по свойству DataChange...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

kminas
Бывалый
Бывалый
 
Сообщения: 234
Зарегистрирован: 31.10.2005 (Пн) 20:17
Откуда: Ростов-на-Дону

Сообщение kminas » 12.02.2008 (Вт) 20:57

А есть ли возможность программно ограничить переход по клавише Tab только внутри одной вкладки
Константин


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

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

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

    TopList