Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65

Как отловить в своей программе нажатие CTRL + F

26.10.2012, 19:56. Показов 2493. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Я в своей программе хочу сделать поиск среди textbox. И у меня есть некоторые недопонимания:
1) Как отловить в своей программе нажатие CTRL + F ???
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
If vbKeyControl Then
Select Case KeyCode
Case vbKeyF
Text1.Top = 200
Text2.Visible = True
Text2.Top = 0
Text2.Height = 200
Text2.SetFocus
Command1.Visible = True
Command4.Visible = True
vremvprog = False
Text2.BackColor = 8454143
End Select
End If
 
If vbKeyControl Then
Select Case KeyCode
Case vbKeyD
Text1.SelText = Date
Case vbKeyA
Text1.SelStart = 0
    Text1.SelLength = Len(Text1.text)
End Select
 
End If
Таким способом не работает.
Какие другие способы есть???

2) Сам поиск.
Как сделать в поиске "предыдущий" ? Кнопка следующий у меня работает под таким кодом↓ А вот предыдущий работать не хочет....
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub Command2_Click()
On Error Resume Next
z = z + Text1.SelLength
z = InStr(z, Text1.text, Text2.text)
If z > 0 Then
Text1.SetFocus
Text1.SelStart = z - 1
Text1.SelLength = Trim(Len(Text2.text))
Text2.BackColor = 8453888
Else
Command4.Visible = True
Text2.SetFocus
Text2.BackColor = 8421631
z = 1
End If
 
 
End Sub
3) А можно ли сделать так чтоб найденый текст не выделялся, а менял цвет, размер и т.п. ?

Заранее спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.10.2012, 19:56
Ответы с готовыми решениями:

Как отловить в своей программе нажатие CTRL + F
SoftIce, Я перевожу свою программу на vb10 и у меня возникли проблемы с переводом. Точнее с переменными. Подскажите пожалуйста как их...

Как отловить нажатие ctrl+v ctrl+c ctrl+x key_Press
Как правильно отловить нажатие ctrl+v ctrl+c ctrl+x в событии key_Press? я пробую так: private void textBox_ServerIP_KeyPress(object...

Как отловить нажатие CTRL+Z?
Как отловить нажатие CTRL+Z?

24
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
26.10.2012, 22:14
Цитата Сообщение от dima208-2009 Посмотреть сообщение
1) Как отловить в своей программе нажатие CTRL + F ??
Visual Basic
1
2
3
4
5
6
7
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If Shift = 2 And KeyCode = 70 Then MsgBox "Ctrl+F"
End Sub
 
Private Sub Form_Load()
    KeyPreview = True
End Sub
1
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
27.10.2012, 00:51
Цитата Сообщение от dima208-2009 Посмотреть сообщение
Как сделать в поиске "предыдущий" ?
___________
Вложения
Тип файла: rar VV.rar (2.0 Кб, 12 просмотров)
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
28.10.2012, 20:30  [ТС]
SoftIce, Большое спасибо. А можно ли сделать чтоб в поиске вводить не все слово, а первый слог искомого слова?
0
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
28.10.2012, 21:48  [ТС]
SoftIce, К сожалению во время поиска происходит ошибка
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
28.10.2012, 22:24
Цитата Сообщение от dima208-2009 Посмотреть сообщение
SoftIce, К сожалению во время поиска происходит ошибк

А я разве дал тебе оптимальный код?

Ты же разрабатываешь.

Примени свои шаловливые ручки, глядишь, всё и наладишь
0
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
28.10.2012, 22:33  [ТС]
SoftIce, Спасибо, но не рабочий код у меня уже есть

Добавлено через 3 минуты
У кого-нибудь есть рабочий код поиска с функцией следующее слово и предыдущее слово?
Или кто-нибудь может помочь исправить ошибку в моем коде?
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub Command2_Click()
z = z + Text1.SelLength
z = InStr(z, Text1.text, Text2.text)
If z > 0 Then
Text1.SetFocus
Text1.SelStart = z - 1
Text1.SelLength = Trim(Len(Text2.text))
Text2.BackColor = 8453888
Else
 
z = 1
End If
 
 
End Sub
Заранее большое спасибо.
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
29.10.2012, 21:15
dima208-2009,вот посмотри
Вложения
Тип файла: rar VV.rar (2.0 Кб, 11 просмотров)
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
29.10.2012, 21:35  [ТС]
SoftIce, Спасибо вам большое.
Только вот одна микро праблемка. Если слог стоит первым он его находит, а дальше не идет
Пожалуйста помогите исправить эту праблемку.
Еще раз огромное спасибо за код.
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
29.10.2012, 21:42
Как это не находит?
Находит даже в середине.
Или я что-то не понимаю?
Миниатюры
Как отловить в своей программе нажатие CTRL + F  
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
29.10.2012, 21:48  [ТС]
SoftIce,
Если в начале текста стоит первый слог, то он дальше не ищет.
Если слог не первый в тексте, а второй то поиск работает великолепно!
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
29.10.2012, 22:38
У тебя не горит?
Завтра гляну.
Вложения
Тип файла: rar VV.rar (2.1 Кб, 7 просмотров)
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
29.10.2012, 22:44  [ТС]
К сожалению не помогло. Теперь он пропускает второй слог.
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
29.10.2012, 23:57
У меня неиссякаемый запас кода
Вложения
Тип файла: rar VV.rar (2.1 Кб, 5 просмотров)
1
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
30.10.2012, 07:15
Исправил
Вложения
Тип файла: rar Исправленный.rar (2.3 Кб, 8 просмотров)
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
30.10.2012, 18:27  [ТС]
SoftIce, Спасибо вам большое. Вы мне очень сильно помогли

Добавлено через 1 час 15 минут
SoftIce, Рано радовался. Теперь такая ошибка: Если слово состоит более из 5 символов (в поисковике) и нажимать кнопку назад, то он перескакивает слова. Если меньше 5 то работает отлично, вперед при любом кол-ве работает отлично.
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
30.10.2012, 18:35
Сейчас посмотрю

А ты сам не можешь что ли?
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
30.10.2012, 18:37  [ТС]
SoftIce, Я начинающий программист
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
30.10.2012, 18:44
Я не смог воспроизвести ошибку. У меня не перескакивает.
Поясни, желательно со скрином, как это происходит.
1
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 65
30.10.2012, 18:58  [ТС]
SoftIce, Вот скрин
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.10.2012, 18:58
Помогаю со студенческими работами здесь

Отловить нажатие Ctrl+C и выполнить действие паралельно с системой
Всем доброго времени суток. Я ставил хук с помощью компонента ApplicationEvents. Но при этом выполняеться только то что я написал, а мне...

Нужно в своей программе отловить WM_KILLFOCUS чужой программы
Известен хэндл окна чужой программы. Мне нужно в своей программе отловить WM_KILLFOCUS чужой программы. Покажите пожалуйста пример.

Отправить нажатие Ctrl+F9 программе работающего в фоном режиме
Доброго, гуглил вопрос и нашел массу не работающих решений :) - не получается отправить нажатие Ctrl+F9 программе работающего в фоном...

Как отловить Ctrl-Alt-Del?
Бесконечная тема... Ну выскакивание таскменеджера все успешно устранили. А дальше? Никто не пробовал после этого сам отловить это...

Как мне отловить ошибку в своей проге
Я НЕ ИСПОЛЬЗУЮ TFORM. Я все окно создаю с помощью DialogBOX. Мне надо написать функцию которая бы отлавливала ВСЕ ошибки в моей проге!!!


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru