0 / 0 / 0
Регистрация: 27.11.2015
Сообщений: 75
1

Поиск в TComboBox с FindDialog

20.05.2016, 11:45. Показов 400. Ответов 5
Метки нет (Все метки)

Приветствую, надо организовать поиск нужной строки в TComboBox с помощью компоненты FindDialog. Поиск запускать по кнопке. В Событиях для FindDialog1 прописал на OnFind FindDialog1Find. Вот код, поиск не происходит. Как исправить? Пробовал двумя способами, но легче не стало. Для PosEx подключил strUtils
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm1.FindDialog1Find(Sender: TObject);
var Find,startpos,i:integer;
begin
FindDialog1.Execute;
if FindDialog1.Execute=true then begin
{for i := 0 to 10 do begin
if pos(find,Combobox1.Text)<>0 then begin
ComboBox1.SetFocus();
ComboBox1.SelStart:=Pos(find, ComboBox1.Text);
ComboBox1.SelLength:=Length(find);
end;
end;}
Find:=posex(FindDialog1.FindText,ComboBox1.Text,StartPos+1);
if Find<>0 then begin
ComboBox1.SelStart:=Find-1;
ComboBox1.SelLength:=Length(FindDialog1.FindText);
 
end;
 
end;
end;
То что в {}Был первый способ.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.05.2016, 11:45
Ответы с готовыми решениями:

Поиск через FindDialog
Здравствуйте! У меня есть компонент Memo и Find в созданном главном меню. К сожалению, код, что...

Поиск через FindDialog
Нужно организовать поиск нужной строки в ComboBox с помощью компонента FindDialog. Подскажите как...

Поиск в TMemo без FindDialog с выделением всех найденных шаблонов.
Здравствуйте! Писал свою программу для заметок и хочу сделать поиск по тексту. Написал код:...

Как в блокноте сделать поиск фрагмента во всем тексте (используя FindDialog)?
Как в блокноте сделать поиск фрагмента во всем тексте?

5
3952 / 3367 / 875
Регистрация: 29.08.2013
Сообщений: 21,987
Записей в блоге: 2
20.05.2016, 11:47 2
вы забыли что такое ComboBox1.Text
0
Житель Земли
2965 / 2932 / 389
Регистрация: 26.07.2011
Сообщений: 11,278
Записей в блоге: 1
20.05.2016, 11:50 3
Цитата Сообщение от Just Trying Посмотреть сообщение
FindDialog1.Execute;
if FindDialog1.Execute=true then begin
зачем это? два раза отображать диалог!
0
0 / 0 / 0
Регистрация: 27.11.2015
Сообщений: 75
20.05.2016, 13:29  [ТС] 4
В конечной версии программы я бы это удалил, честно....

Добавлено через 1 минуту
А можете тогда сказать как сделать поиск для ListBox?
0
3952 / 3367 / 875
Регистрация: 29.08.2013
Сообщений: 21,987
Записей в блоге: 2
20.05.2016, 13:35 5
точно так же как и для ComboBox - перебрать строки и искать (для частичного поиска)
для полного есть встроенная функция
0
пофигист широкого профиля
4456 / 2944 / 830
Регистрация: 15.07.2013
Сообщений: 16,927
20.05.2016, 17:20 6
Цитата Сообщение от DenNik Посмотреть сообщение
зачем это? два раза отображать диалог!
В OnFind и одного раза много
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.05.2016, 17:20

FindDialog
Нужно организовать поиск нужной строки в ComboBox с помощью компонента FindDialog.

findDialog
Вообщем проблема такова, при компиляции вылезают ошибки /home/gorans/QT...

FindDialog в браузере
Я пишу книгу электронную. Имеются TOutline TWebBrowser Мне надо поиск По Html страничке через...

ReplaceDialog и FindDialog
здраствуйте, помогите запрограммировать ReplaceDialog и FindDialog на кнопку Button. Вот программа...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru