powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в RunTime изменить для DataCombo свойство Style?
8 сообщений из 8, страница 1 из 1
Как в RunTime изменить для DataCombo свойство Style?
    #32941814
valzk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день! Вот кусочек кода:

Dim mCombo As Object

Set mCombo = mForm.Controls.Add("MSDataListLib.DataCombo", "FilterBox")
А строчкой ниже естественно валиться.
mCombo.Style = dbcDropdownList

Пробовал и так:
Dim nStyle As Long, nRetVal As Long
nStyle = GetWindowLong(Combo.hwnd, GWL_STYLE)

nStyle = nStyle Or CBS_DROPDOWNLIST
nRetVal = SetWindowLong(Combo.hwnd, GWL_STYLE, nStyle)
нет результата.

Может кто подскажет как в RunTime поменять Style?
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32942984
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак. Единственный вариант - создать UserControl, кинуть на него два DataCombo с уже установленными стилями и показывать один или другой по надобности.
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32943467
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyНикак. Единственный вариант - создать UserControl, кинуть на него два DataCombo с уже установленными стилями и показывать один или другой по надобности.Скачал примеры программ на VB6 с сайта Microsoft и случайно увидел как раз это: два комбика, один из них скрыт. ;-)
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32943981
valzk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответы, но наверно не совсем до конца раскрыл суть проблемы.
И так, необходимо динамически добавить на форму DataCombo и чтобы он был всегда в стиле CBS_DROPDOWNLIST. Так как после
Set mCombo = mForm.Controls.Add("MSDataListLib.DataCombo", "FilterBox")
Стиль по умолчанию при создании Control’а равен dbcDropdownCombo и изменить его, а может изначально добавить Control с предустановленным свойством dbcDropdownList, я не знаю как.
Варианта с использованием UserControl хотелось бы избежать.
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32945996
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не используй Controls.Add
Положи на форму невидимый DataCombo с индексом 0 и предустановленными свойствами. По мере необходимости делай
Load DataCombo1(DataCombo1.Count)
DataCombo1(DataCombo1.Count-1).Visible = True
и все такое прочее.
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32947178
valzk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за предложение, но Вы, наверное, не совсем внимательно прочитали предыдущее сообщение.

... И так, НЕОБХОДИМО ДИНАМИЧЕСКИ добавить на форму ...
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32950769
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А это и есть один из двух способов ДИНАМИЧЕСКОГО добавления контролов. Но если он недостаточно динамичен... придется забыть про dbcDropdownList
...
Рейтинг: 0 / 0
Как в RunTime изменить для DataCombo свойство Style?
    #32950883
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ComponentOne TureDBList Pro 7.0 Может динамически менять ComboStyle (сам не знал!)
Вот это работает:
Код: plaintext
1.
2.
3.
Case  0 
   Me.TDBCombo1.ComboStyle = dbcDropdownList
Case  1 
   Me.TDBCombo1.ComboStyle = dbcDropdownCombo
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в RunTime изменить для DataCombo свойство Style?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]