Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск в ListBox, без точного названия искомого 
V
    Опции темы
Kirgston
Дата 12.4.2009, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Конечно можно сделать всё с иф... но будет что то очень большой код...
PM MAIL   Вверх
artsb
Дата 12.4.2009, 14:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 39
Всего: 64



Цитата(Kirgston @  12.4.2009,  11:46 Найти цитируемый пост)
с стрингом уже не хочет

ага. Со стрингами уже не работает. Так что if()...else()


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Kirgston
Дата 12.4.2009, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Что реально больше выхода никакого нету? :( Просто мне нужно именно по имени... циклом не выходит:( именно по моей задумке. Надо либо свич либо ифом. Но с ифом это будет просто гигантский код о_О может есть какие-то идеи? =)
PM MAIL   Вверх
Anikmar
Дата 12.4.2009, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 34
Всего: 59



В ListBox кажется есть еще список объектов, привязанных к каждой строке. Можно воспользоваться этим.
А вообще я не понял задачи. Если вы сами в листбокс помещаете значения - значит знаете их индексы? Делайте switch по ItemIndex если вы знаете какая строка по этому индексу.
PM MAIL ICQ   Вверх
Kirgston
Дата 12.4.2009, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Ну так и делал =) смотрите какой подход... хочу сделать радио. Но не открытое аля всё считать из файла, а закрытое (всё вшито в программу). Почему так? Ну просто лично мое ИМХО и всё =) переубеждать не надо, знаю что легче но увы, захотелось мне так =)

Так вот. Да я знаю итем индекс. И так и делал... но вот применил комбобокс и там есть поиск. Подумал я... и решил что это не нормально если после буквы "П"  у меня идет буква "Я" и решил я отсортировать список... =) но дело в том что я не собираюсь в ручную сортировать список из 70 строчек это глупо... и потом прийдется переделывать кучу кода... потому хотелось сделать свич на Комбо бокс или аля лист бокс. И просто выбирать. Скажем если строчка ровна "Привет" значит делать... но со свичем я увы не могу этого провернуть... остается иф-елсе... неужели только через него? Там же код будет как пельмень! Причем очень толстый! о_О
PM MAIL   Вверх
Anikmar
Дата 12.4.2009, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 34
Всего: 59



Значит придется к каждой строке привязать некий объект воспользовавшись свойством Objects. Создайте некую структурку, описывающую элемент ЛБ, в котором может быть некий ID для свитча и другая нужная информация и привяжите по одному такому объектику к каждой строке ЛБ. По идее при сортировке они будут все равно привязаны к родной строчке.
PM MAIL ICQ   Вверх
artsb
Дата 13.4.2009, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 39
Всего: 64



Kirgston, я что-то не совсем понял, вам нужно отсортировать список или что?
Если сортировать:
Код

ComboBox1->Sorted = true;

Ну или в Object Inspector'е свойство выставьте.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Kirgston
Дата 13.4.2009, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Не совсем )))) отсортировать я то могу. Но мне надо привязать как бы ... короче чтобы когда пользователь нажимает на определенную строку (я не знаю её индекса. Знаю только название строки) выполнялось действие... таких строчек около 100... потому и хотел через свич. Типа 
switch (PList->Items->Strings[PList->ItemIndex])
case 'Привет' : blablabla;break;

Но со свичем так не выходит... сделал через иф... такое впечатление что всё тормозит )))) не сильно но на 1 секунду будет
PM MAIL   Вверх
artsb
Дата 13.4.2009, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 39
Всего: 64



Цитата(Kirgston @  13.4.2009,  10:52 Найти цитируемый пост)
(я не знаю её индекса

 smile 
Код

ComboBox1->ItemIndex
// +
ComboBox1->Items->IndexOf()


Или не то...


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Kirgston
Дата 13.4.2009, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Нет не то =) мне тогда надо будет сделать ф-цию получения ста индексов =) и куда-то их всех вписать а потом делать свич... короче будет ещё хуже. 

Просто представим ситуацию. Скажем есть список из 100 радио каналов. Если их использовать скажем просто в том порядке что я вписал проблем нету. Но мне захотелось отсортировать. При сортировке ИтемИндекс само собой изменяется. Скажем первое радио было Ямайка оно стало сотым т.к. Я последняя буква и т.д. и тут уже я теряю индекс. А для каждого радио мне надо вписать 2 строчки моего кода. Вообщем пока что ближе всего ответ Аникамара - структура... но мне кажется это будет излишним т.к. просто не оправдает себя =)  

Кстати такой вопросик... в делфи был exit; то есть выход из ф-ции. Тут есть вроде брейк но он вроде выходит только с цикла. Есть аналог exita?
PM MAIL   Вверх
artsb
Дата 13.4.2009, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 39
Всего: 64



Теперь понял smile Надо подумать.

Цитата(Kirgston @  13.4.2009,  13:43 Найти цитируемый пост)
Есть аналог exita? 

Код

return;



--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Kirgston
Дата 13.4.2009, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Ну ретурн возвращает значение... а екзит вроде просто выходил из процедуры. Или можно ретурн также как выход из процедуры использовать?
PM MAIL   Вверх
artsb
Дата 13.4.2009, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 39
Всего: 64



Мне кажется, Anikmar прав. В вашем случае лучше использовать структуру.

Добавлено через 2 минуты и 9 секунд
Цитата(Kirgston @  13.4.2009,  22:29 Найти цитируемый пост)
Или можно ретурн также как выход из процедуры использовать?

Ага.
Вы же можете написать просто:
Код

return;

Не обязательно возвращать какое-нибудь значение.


--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
Kirgston
Дата 13.4.2009, 23:02 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 792
Регистрация: 24.12.2007

Репутация: 2
Всего: 2



Ага... ясно спасибо большое! Сколько не учу С++ всё понимаю... С++ философская наука =) по сравнению с Делфи... ну блин я теперь на Делфи смотреть не могу просто! о_О Как ни крути но С++ реально намного интересней ! =) столько возможностей...  smile 

Всем ещё раз ОГРОМНОЕ СПАСИБО!
PM MAIL   Вверх
THandle
Дата 14.4.2009, 07:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 25
Всего: 372



Прошу у всех прощения, но я просто не могу удержатся.

Цитата(Kirgston @  14.4.2009,  00:02 Найти цитируемый пост)
столько возможностей...  


Каких возможностей? Где тут хоть использован C++? Тут идет просто работа с VCL стандартными компонентами и не менее стандартными классами. Ни одной глубинной возможности C++, которой не было бы в Delphi тут не использовано. Да тут вообще ничего не использовано. Равнозначный код и на Builder и на Delphi.

Цитата(Kirgston @  14.4.2009,  00:02 Найти цитируемый пост)
по сравнению с Делфи...


Мастер в Delphi? Ну расскажите какие возможности тут применены тогда, которых нет в Delphi.

Цитата(Kirgston @  14.4.2009,  00:02 Найти цитируемый пост)
ну блин я теперь на Делфи смотреть не могу просто!


Никто не мешает, не смотрите. Лучше займитесь программированием, а не всем этим батонокидательством со всеми вытекающими.

Я никогда не поверю что ни в одной из тех многочисленных книг которые Вы читаете нет пары слов о Return и главы по работе со строками...

В общем мой Вам добрый совет: никогда не говорите что что-то лучше другого, если не знаете все это досконально.
Можно сказать - "синтаксис C++ мне более удобен" или что-то подобное в данных условиях, но говорить про возможности... Я бы в серьезной форме никогда бы не заявил, что Delphi лучше C++ или наоборот. Такое заявление приемлемо только из уст программиста проработавшего и с тем и с другим добрый десяток лет.

PM   Вверх
Страницы: (4) Все 1 [2] 3 4 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0565 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.