Tomsk Sysadmins Forum
Windows => Программирование => Topic started by: blackmask on September 10, 2008, 10:39:46
-
Кто знает, где можно достать компонент наподобе ComboBox, но только чтобы в выпадающем списке слева или справа от строки были CheckBoxы. Т.е. чтобы в выпадающем списке можно было помечать несколько строк.
-
Быстрее, наверное, свой составной объект сделать )
-
Кто знает, где можно достать компонент наподобе ComboBox, но только чтобы в выпадающем списке слева или справа от строки были CheckBoxы. Т.е. чтобы в выпадающем списке можно было помечать несколько строк.
Я бы не рекомендовал использовать такой "контрол", ComboBox обычно предполагает выбор одного элемента из списка, добавление туда CheckBox'ов приводит к тому, что нужно раскрывать список чтобы увидеть что на самом деле выбрано.
Лучше использовать ListBox или ListView, в которых такая возможность предусмотрена.
-
Да места для ListBoxa не хватит на странице. И по особому пожеланию заказчика должна быть только одна страница. А на ней еще много чего нужно разместить.
К тому же есть такие компоненты, но пока не могу найти. Типа ComboCheckBox
-
Да места для ListBoxa не хватит на странице. И по особому пожеланию заказчика должна быть только одна страница. А на ней еще много чего нужно разместить.
Значит тот кто проектировал интерфейс, если его вообще кто-то проектировал, о пользователях вообще не подумал. Еще раз повторю, что работать с таким контролом очень не удобно, лучше уж сделать кнопку которая раскрывает дополнительное окно с ListBox'ом, зачем заниматься самообманом. "ComboCheckBox" это иллюзия одного окна, потому что для получения информации о том чего там навыбирали пользователю все равно придется делать один клик мышкой на кнопке раскрытия списка.
С "особыми пожеланиями заказчика" все просто -- покажите ему мультфильм "про восемь шапок из одной шкуры".
Все равно на одну экранную форму можно уместить ограниченное число элементов управления.
К тому же есть такие компоненты, но пока не могу найти. Типа ComboCheckBox
Ну вот как-то эти два предложения друг другу противоречат, если найти не можете значит их наверное нет.
-
Ну вот как-то эти два предложения друг другу противоречат, если найти не можете значит их наверное нет.
Они есть. Только пока платные видел.
-
Они есть. Только пока платные видел.
Ну если так упорно хочется "ComboCheckBox", то его и самому сделать не очень сложно, за основу можно взять TRxCheckListBox и TOwnerDrawComboBox из того же самого RXLib.
Можно еще покопаться в http://www.delphi-jedi.org/ (http://www.delphi-jedi.org/) там куча всякого opensource хлама.
-
Ну если так упорно хочется "ComboCheckBox", то его и самому сделать не очень сложно, за основу можно взять TRxCheckListBox и TOwnerDrawComboBox из того же самого RXLib.
Может подскажете где взять эту библиотеку? У меня есть только Raize Components.
-
Может подскажете где взять эту библиотеку? У меня есть только Raize Components.
http://www.google.ru/search?q=RXLib (http://www.google.ru/search?q=RXLib)
Только там нет готового компонента который нужен, придется делать руками.
RXLib вообще-то уже давно умерла и плохо пахнет, она стала частью http://www.delphi-jedi.org/ (http://www.delphi-jedi.org/), если я не ошибаюсь.
-
Вы были правы. Такой компонент действительно не удобен для пользователя. Наглядности почти никакой. Каждый раз приходиться нажимать на кнопку, чтобы что-то изменить. Попробую объяснить это заказчику.
Спасибо за советы
-
Вы были правы. Такой компонент действительно не удобен для пользователя. Наглядности почти никакой. Каждый раз приходиться нажимать на кнопку, чтобы что-то изменить. Попробую объяснить это заказчику.
Спасибо за советы
Я бы даже сказал, нужно нажимать кнопку чтобы "что-то посмотреть", а это потенциальная возможность ошибки оператора, так как можно забыть что выбран не один элемент.
Относительно альтернатив давать однозначные советы трудно, но в любом случае, если элементы на одну форму не помещаются нужно делать несколько форм или как вариант "закладки" на одной форме, но у закладок та же проблема -- не видно что там на другой закладке выбрано.
-
Я бы даже сказал, нужно нажимать кнопку чтобы "что-то посмотреть", а это потенциальная возможность ошибки оператора, так как можно забыть что выбран не один элемент.
Через ( ; ) в строке ComboBoxа пишуться выбранные элементы