| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > TCppWebBrowser & "Enter" |
| Автор: NoeR 16.2.2005, 23:09 |
| Я начинаю понимать что этого никто не знает ... Но проблема есть проблема и может на этом форуме хоть один человек это может быть знает ... Так вот, ставлю компонент TCppWebBrowser на форму, один TEdit и TButton. OnButtonClick()->TCppWebBrowser->Navigate(WideString(Edit1->Text)); Запускаю, ввожу сайт, он заходит, но кнопка "Ентер" просто не работает, или если кому удобнее то Submit не работает. Ну собсна кто - нибудь знает ответ на этот вопрос ? |
| Автор: maxim1000 28.2.2005, 14:03 |
| возможно, дело в фокусе? стоит попробовать перед нажатием передать фокус компоненту |
| Автор: _hunter 28.2.2005, 17:08 |
| не совсем понял в чем проблема. ты на кнопку нажать не можеш или обработчик не отрабатывает? |
| Автор: NoeR 1.3.2005, 20:04 |
| Я нажимаю на Ентер, например на маил ру када ввел логин пароль, и он не заходит - т.е. Ентер ВООБЩЕ не реагирует ... Да что там говорить, попробуй сам если время есть - во всяк. случае так будет проще ... А с фокусом я малек не понял, вроде он в фокусе сразу стоит ..(вначале) _hunter обработчик не обрабатывает скорее всего ... Контрл Ц тоже не пашет, однако я нашел метод его включить ... А вот Контрл В пашет ... Гороче я не знаю почему все это, но очень хочу научиться ставить Ентер в позу ... |
| Автор: _hunter 1.3.2005, 20:09 | ||||
проверил еще во время первого ответа -- нормально заходит
этого я не понял. так же как и этого:
что значит скорее всего? что значит "вообще"? поставь бряку да посмотри обработчик управление получает или нет. может у тебя компонент банально зависает. |
| Автор: maxim1000 1.3.2005, 20:14 |
| а если мышкой нажать, реагирует? |
| Автор: NoeR 1.3.2005, 20:18 |
| Мышкой да ... Не может быть что у вас Ентер работает ! Я у 7 наверное точно спрашивал - не пашет ... _hunter вообще - это значит ноль внимания ... У меня не заходит после нажатия ентера. Ты ни чего не добавлял ? Ни фокуса, ни ... ? |
| Автор: _hunter 1.3.2005, 20:29 |
| без фокуса, без ничего. только щас дошло -- код из первого топика, ты его используеш? |
| Автор: NoeR 1.3.2005, 20:38 |
| Ну да... зайти то надо както на сайт.. |
| Автор: _hunter 1.3.2005, 21:16 |
| я имею в виду 1в1. как написал так и копилятору толкаеш. так? |
| Автор: Hroft 2.3.2005, 11:29 |
| _hunter, ну OnButtonClick()->TCppWebBro... он так просто написал, побыстрее чтоб... И, если честно, то у меня тоже не работает ЕНТЕР... Буквально: набираю в нем как в эксплорере логин/пароль на мейле, по-привычке ЕНТЕР - ноль реакции. На ссылках тоже не бачит. Мышкой работает. |
| Автор: _hunter 2.3.2005, 14:25 | ||
| только после этого объяснекния понял что ентер не работает в контейнере вот что нашел по этому поводу:
|
| Автор: Hroft 2.3.2005, 14:54 |
| _hunter, классно. Сам смастерил, или где надыбал? В целом, почему же так? Получается, что контейнер получает сообщения о нажатии ЕНТЕРа, но не передает своему объекту, и оно просто теряется. Ты его руками передаешь. Или я не все понял? |
| Автор: _hunter 2.3.2005, 14:58 |
| надыбал ( на каком-то немецком сайте -- поэтому без коментариев ) наоборот сообщение об enter' e компонент не получает и его приходится передавать вручную. почему не получает -- не знаю ( возможно очередная "фича" |
| Автор: Hroft 2.3.2005, 15:18 |
| Я и не говорю, что компонент получает, я говорю, что контейнер компонента (сам CppWebBrowser как оболочка) получает, но не передает своему содержимому. Я в этом плохо разбираюсь пока, если неправ - разъясните. ЗЫ: реп+ |
| Автор: _hunter 2.3.2005, 15:24 |
| скорее всего ентер считается системным сообщением ( или еще чем-то ) и его сама форма не передает. щас еще покопаю P.S. за + -- спасибо |
| Автор: NoeR 3.3.2005, 16:17 |
| _hunter К сожалению не могу тебе поставить "+", но сказать спасибо могу В общем большое спасибо А можно Ивент както отрубить када я ввожу ссылку в Едит1 ? Ато теперь это не пашет Но если это сложно сделать, тада не надо |
| Автор: _hunter 3.3.2005, 16:34 | ||
| что-то с этими сообщениями странное творится... ( кажись фича от борланда какая-то ) даже вызов Perform() кнопки не помогает поэтому вот такое корявище добавь:
после Handled = false; |
| Автор: NoeR 3.3.2005, 20:19 | ||
Не, не пашет, но я придумал хороший вариант:
Так что спасибо, больше не надо, и еще раз спасибо за Ентер |
| Автор: _hunter 3.3.2005, 20:22 |
| пожалуйста |
| Автор: sadim 22.9.2009, 15:43 |
| Кстати, продолжение . история та же. Добавил ApplicationEvents. вставил кусок программы. и эффект: если страничка состоит из 1 фрэйма то все путем, но если на страничке (к примеру чат там за частую несколько фреймов ) при наборе в строчке текста и нажатия Enter не поступает нужный эффект. То есть другими словами сообщение не отправляется. Если же тыкнуть Tab и попасть на кнопачку отправить - то тут уже Enter и сообщение отправленно в чат. Что подскажут гуру ? |
| Автор: Alca 22.9.2009, 15:48 | ||
? |
| Автор: sadim 22.9.2009, 17:58 | ||||
| KeyPreview ставил и true И false - всеедино не реагирует. Убрал описание ApplicationEvents1Message. - Заработал чат - ессно перестала работать Аутентификация ( варианты KeyPreview пробовал, true и false ). Другими словами TranslateAccelerator приобразовывает нажатие клавиши в WM_COMMAND. По скольку на форме ( типичная аутентификация ) ожидется как раз WM_COMMAND, а на некоторых чатай идет обработка отправления в чат сообщения по именно нажатию. Теперь вопрос: как сделать так чтоб отправлялась и "Нажатие клавиши" и WM_COMMAND ??
|
| Автор: sadim 22.9.2009, 23:01 | ||
| чтоб меня черти дрючили.... получилось. тапорно-быдлокод, но работает
громадная просьба гуру подкорректируйте текст чтоб был человеческим |