![]() |
|
Модераторы: Akina |
![]()
|
|
| Jr13san |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 29.7.2008 Где: г. Павлово Репутация: нет Всего: нет |
Что то не получается у меня при нажатии на Tab выполнить какое-либо действие.
Писал так, но не работает: 'свойство формы: KeyPreviev = true 'Создаём 2 textbox'a Вот код:
Не работает из за того, что при нажатии Tab идёт переключение на другой Textbox. А как бы придумать так, чтобы при нажатии в текстовом поле клавиши Tab - выполнилось событие msgbox? Через несколько дней: Вот придумал кое-что: Разместите на форме Text1. Под Text1 разместите Frame1. На Frame1 поместите Text2. Подгоните размеры Frame1 под размеры Text2. Киньте на форму label1 и его размеры подгоните под размеры Text2. Должно выглядеть как будто бы на форме только Tex1 и Text2. Vb6код:
Неудобно из-за того, что слишком громоздско получилось... А если несколько Textbox'ов будет, то тут легко запутаться... Может кто-нибудь знает как попроще сделать. Обратите внимание на NUmlock, когда будете кликать по Text2.text(во время выполнения программы). Numlock мигнёт, т.к. выполняется команда SendKeys. Ещё через несколько дней: Пишу здесь же про проблему с Numpad'ами от Numlopad 0 до Numpad 9 + Num * + Num+ + num- + numEnter + Num del + num / Пишу тоже по keyCode, но кнопки не реагируют вообще, а не реагируют потому, что за место Num'ов нажимаются простые цифры от 1 до 9, /,*,-,+,. . Если выключить Numlock, то 4- лево, 6- право, 8 - вверх, 2 - вниз, а за место оставшихся Num'ов нажимаются Page Up, Page Down, End, Delete, Home Insert и /,*,-,+. Проблема в том, что нужно чтобы при нажатии в Text1 Numpad'ов происходило событие msgbox "Num0,1,2,3 и т.д."(чтобы эти события происходили при включённом NUmlock и при выключенном NUmlock) Где эти Numpad'ы искать - не знаю. Кто знает, помогите пожалуйста. Это сообщение отредактировал(а) Jr13san - 29.11.2008, 12:01 |
||||
|
|||||
| BorisVorontsov |
|
|||
![]() Thinker ![]() ![]() Профиль Группа: Комодератор Сообщений: 714 Регистрация: 3.11.2005 Где: Молдавия, г. Киши нёв Репутация: 5 Всего: 10 |
Ой, сколько заморочек, и только потому, что VB скрывает всю обработку сообщений от разработчика...
По-хорошему, все это решается обработкой клавиш в цикле GetMessage. По не-совсем-плохому (потому что у тебя в посте это совсем-по-плохому) сабклассингом формы и э.у. -------------------- [code=cpp] const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out); for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl; [/code] |
|||
|
||||
| Jr13san |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 29.7.2008 Где: г. Павлово Репутация: нет Всего: нет |
мдя...
Добавлено через 2 минуты и 21 секунду а что с Numpad'ми? |
|||
|
||||
| Jr13san |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 29.7.2008 Где: г. Павлово Репутация: нет Всего: нет |
|
|||
|
||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 6 Всего: 191 |
Это сообщение отредактировал(а) Rrader - 4.12.2008, 17:51 |
|||
|
||||
| BorisVorontsov |
|
|||
![]() Thinker ![]() ![]() Профиль Группа: Комодератор Сообщений: 714 Регистрация: 3.11.2005 Где: Молдавия, г. Киши нёв Репутация: 5 Всего: 10 |
А ничего с ними. То, что ты пытаешься сделать -- глупость. На что тогда вообще клавиша Num Lock и соотв. индикатор на клавиатуре? А если юзер нажмет "реальный" Home или Insert? -------------------- [code=cpp] const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out); for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl; [/code] |
|||
|
||||
| Rrader |
|
||||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 6 Всего: 191 |
Хороший вопрос. Ну что ж, отфильтруем Форма:
Модуль:
|
||||
|
|||||
| Jr13san |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 29.7.2008 Где: г. Павлово Репутация: нет Всего: нет |
ок, я разобрался по-своему, но клавиши работают только с включёным Numlock. Попробую как вы написали...
|
|||
|
||||
| BorisVorontsov |
|
|||
![]() Thinker ![]() ![]() Профиль Группа: Комодератор Сообщений: 714 Регистрация: 3.11.2005 Где: Молдавия, г. Киши нёв Репутация: 5 Всего: 10 |
-------------------- [code=cpp] const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out); for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl; [/code] |
|||
|
||||
| Jr13san |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 29.7.2008 Где: г. Павлово Репутация: нет Всего: нет |
Rrader, извини конечно, но я непонял некоторые части кода...
Не мог бы ты мне разяснить с помощью комментариев всё кроме Api и констант/ Пожалуйста. |
|||
|
||||
| alorion |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 15.2.2009 Репутация: нет Всего: нет |
нужно было всем контролам формы установить свойство TabStop = False |
|||
|
||||
| Jr13san |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 29.7.2008 Где: г. Павлово Репутация: нет Всего: нет |
Попробуем...
|
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |