|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.08.2011, 23:30 | #1 |
Регистрация: 22.08.2011
Сообщений: 7
|
WebBrowser нажатие на стрелки
вобщем возникла одна проблема. Задался я как-то идеей написать что-то типо клиента для браузерной игры, просто так, для облегчения. Понял что надо использовать WebBrowser и все получилось с первого раза, но вот незадача, управление персонажем просходит нажатием на стрелочки, а когда я нажимаю на них то просто выделяестся что-нибудь другое или вообще ничего не происходит та же беда и backspase-ом, искал долго в инете но нашел только 1 готовуб прогу на базе делфи и там все работало как надо, но исходников небыло. Вобщем прошу помощи помогите что там нужно сделать чтобы игра поняла что я от нее хочу=))
вот код весь что надо добавить чтобы стрелочки с backspase-ом начали работать как надо???? Код:
Последний раз редактировалось dr.Chas; 04.09.2011 в 17:35. |
23.08.2011, 00:33 | #2 |
Форумчанин
Регистрация: 30.01.2009
Сообщений: 418
|
я так понял вы хотите через нажатие кнопок в delphi выполнять действия внутри веб страницы?
|
23.08.2011, 00:42 | #3 |
Регистрация: 22.08.2011
Сообщений: 7
|
да я хочу нажать на клаве стрелку влева и в браузере во флеш игре персанаж движется влева вправа значит вправа ит.д.
|
23.08.2011, 01:01 | #4 | |
Форумчанин
Регистрация: 30.01.2009
Сообщений: 418
|
Цитата:
Последний раз редактировалось Lesha; 23.08.2011 в 01:06. |
|
23.08.2011, 01:13 | #5 |
Регистрация: 22.08.2011
Сообщений: 7
|
я качал браузер от делфи и все работало но мне нужен исходник а там его нет((
|
23.08.2011, 03:44 | #6 | |
Форумчанин
Регистрация: 18.10.2010
Сообщений: 419
|
по-идее без разницы что у вас там в браузере открыто - проблема то в работе компонентов на форме:
Цитата:
как это сделать? я в силу своих не очень больших знаний вижу здесь только очевидный путь: послать сообщение в WebBrowser о том что была нажата какая-то кнопка, а он уж пусть сам там дальше разбирается, что с этим делать. и ни до какого флеша из TWebBrowser достукиваться не надо )) правда есть одно НО. если вы просто откроете в браузере страницу на которой есть флешка, то прежде чем эта флешка будет как-то реагировать на ваши действия, нужно сначала установить на нее фокус, т.е. попросту счелкнуть по ней мышкой. можете проверить это в любом браузере. такова теория. теперь к практике. как отправить сообщение в TWebBrowser - копайте сами в сторону WinApi SendMessage как поймать нажатие кнопки в программе? есть такая тема как application.OnMessage . процедура присвоенная этому свойству будет вызываться каждый раз при возникновении какого-либо события (нажатие кнопки, движение мышки и т.д.). создадим процедуру для обработки сообщений: Код:
получить этот код для каждой клавиши можно примерно так: Код:
p.s. я не указал прямо один важный момент, но он здесь есть. если внимательно читали - разберетесь =) Последний раз редактировалось xrob; 23.08.2011 в 03:49. |
|
23.08.2011, 20:29 | #7 |
Регистрация: 22.08.2011
Сообщений: 7
|
я не настолько силен в програмировании как вы и ничего не понял из вышесказанного, если не трудно расскажите поэтапно, что, откуда и куда добавить какой компанент там и т.п. и какой код при этом писать....
|
23.08.2011, 21:32 | #8 |
Форумчанин
Регистрация: 18.10.2010
Сообщений: 419
|
омг, это даже не "сделайте за меня",
это "делать буду я, но вы мне объясняйте каждое действие!" =))) ну хорошо, сделаю пару камментов. 1. что значит? procedure TForm1.Bugoga(var Msg: TMsg; var Handled: Boolean); это значит что в классе TForm1 (ваша форма) есть некая процедура Bugoga, которая воспринимает 2 параметра: "Msg" типа TMsg, и "Handled" логического типа типа. каким образом процедура Bugoga появилась в классе TForm1? вы вписали ее туда ручками: объявили в классе: Код:
Код:
ее будет запускать неведомая ё****я хрень, о которой ничего не могу сказать, кроме того что есть такой объект aplication, а у него есть свойство OnMessage, которому можно присвоить нашу процедуру Bugoga. делаем это в Form1.OnCreate: Код:
а если вы еще не знаете что такое TForm1.FormCreate, то вам либо во фриланс "сделайте мне клиент для игры", либо курить в гугель "Delphi основы программирования". p.s. кстати, вашу задачу можно решить еще проще ))) уберите нахрен ComboBox, накой он вам сдался? если вы пишете клиент для конкретной игры - стало быть и адрес всегда один и тот же, так что просто делайте Navigate в OnCreate формы и будет вам щасьтъе! Последний раз редактировалось xrob; 23.08.2011 в 21:38. |
23.08.2011, 22:35 | #9 | |
Регистрация: 22.08.2011
Сообщений: 7
|
ComboBox там небыло сразу, было вписано куда заходить....
да я плуг, но хочеться самому сделать, а раз есть знаюшие люди спасибо огромное им и Вам в частности за помощь... ничего не вышло сначало выдавала ошибку Цитата:
лан спасибо больлшое пойду дальше тупить(( |
|
24.08.2011, 00:40 | #10 |
Форумчанин
Регистрация: 18.10.2010
Сообщений: 419
|
эх... это я тоже писал...
KeyCode - в моем примере переменная, мной же и объявленная. KeyCode:integer; KeyCode:=25; здесь 25 - это код клавиши от балды. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
WebBrowser нажатие на кнопку отправки | Bug_Q | Работа с сетью в Delphi | 4 | 06.02.2011 20:43 |
webbrowser и кнопка в нем, нажатие - действие | grafgrial | Общие вопросы Delphi | 6 | 08.12.2010 14:03 |
Стрелки | ddeman666 | Помощь студентам | 0 | 16.05.2010 12:04 |
Долгое нажатие клавиши в KeyDown как одно нажатие | marina15056 | Общие вопросы Delphi | 7 | 16.08.2009 00:22 |
Анимирование стрелки... | kentlm | Мультимедиа в Delphi | 2 | 14.05.2009 02:17 |