Как сделать эмуляцию нажатия левой кнопки

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
Kichiro
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 20.04.2008 (Вс) 10:12

Как сделать эмуляцию нажатия левой кнопки

Сообщение Kichiro » 20.04.2008 (Вс) 10:20

Помогите, возникла проблема с написанием кода содержащим следующий смысл: нужно эмулировать нажатие левой кнопки мышки в VB 6.0. Заранее спасибо!

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 20.04.2008 (Вс) 15:32

Читаем по порядку:

Помогите,...

Человек просит помощи. Постараемся помочь ему. Прочитаем дальше, и определимся, как можно ему помочь.

возникла проблема с написанием кода

У человек возникла проблема с написанием кода. Бедный человек. При написании кода может возникнуть так много проблем: например может сломаться клавиатура, или отказать подсветка синтаксиса в IDE. Но какая же проблема возникла у этого человека? И при написании какого кода возникла проблема?

... с написанием кода содержащим следующий смысл

СодержащИМ? Не содердащЕГО? Т.е. по логике автора "НАПИСАНИЕ" содержит "СЛЕДУЮЩИЙ СМЫСЛ". А как, поинтересуемся у автора, процесс написания может содержать смысл, заключающийся в эмуляции нажатия кнопки мыши?

Бедный автор, у него, пожалуй, проблемы не с написанием кода, а окончаниями причастий. Но простим ему это и прочитаем дальше.

нужно эмулировать нажатие левой кнопки мышки в VB 6.0

Человек (внимание!) говорит нам, что ему нужно. Хорошо, Kichiro, теперь мы знаем, что тебе нужно. Но мы так до сих пор и не узнали, в чём же заключается проблема. Может быть, автор напишет об этом дальше?

Заранее спасибо!

Нет, не написал :( Но заранее за что-то благодарит. Интересно, на что надеется человек, который даже не удосужился описать свою проблему?

Возможно он надеется на телепатию, считает, что кто-нибудь проникнет в его мозг и таки узнает, какая проблема мешает ему достигнуть задуманного.

А возможно он, наивный, считает, что за него кто-нибудь напишет готовый код и преподнесёт ему на блюдечке. В этом случае, мы его темку прихлопнем, и направим в автора раздел "Работа".

К чему я устроил весь этот спектакль? К тому, Kichiro, что надо правильно задавать вопрос.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Kichiro
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 20.04.2008 (Вс) 10:12

Сообщение Kichiro » 20.04.2008 (Вс) 19:13

Ну ты и клоун! обычно про таких как ты говорят: война не всех унесла!

alex_gearbox
Новичок
Новичок
 
Сообщения: 41
Зарегистрирован: 09.01.2008 (Ср) 21:34
Откуда: г. Волгоград

Сообщение alex_gearbox » 20.04.2008 (Вс) 21:46

Kichiro, ты совершенно не прав, ужасно не прав на счёт Хакера! Скажи спасибо, что хоть кто-то ответил на твой... вопрос.

Как это "эмулировать"? Сделать Click или же визуально показать нажатие кнопки? А может быть кнопка не хочет срабатывать по Enter?

Kichiro
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 20.04.2008 (Вс) 10:12

Сообщение Kichiro » 20.04.2008 (Вс) 21:59

Я ведь вежливо попросил помощи, не спорю возможно не совсем доступно изложил ситуацию, но критика здесь не уместна. Что с него взять??? Быдло он!

alex_gearbox
Новичок
Новичок
 
Сообщения: 41
Зарегистрирован: 09.01.2008 (Ср) 21:34
Откуда: г. Волгоград

Сообщение alex_gearbox » 20.04.2008 (Вс) 22:17

Хакер -- администратор, который за оскорбление тебя забанит.
Оскорбления на форуме запрещены. Правила читать надо.
Критика уместна.

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 21.04.2008 (Пн) 9:37

Kichiro
Уважаемое небыдло, а Вы поиском пробовали пользоваться? В 99,9% при ПРАВИЛЬНОЙ формулировке вопроса в нем можно найти ответ. Поверь тому кто тут уже 6-ой год живет. А вот насчет оскорблений Хакера это ты очень погорячился.
Утро добрым не бывает!

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 21.04.2008 (Пн) 9:40

Kichiro юзай
Код: Выделить всё
sub Mouse_Emulate(Button As Integer, Shift As Integer)


и все дела!
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 21.04.2008 (Пн) 13:09

пОМОГИТЕ делаю вот это


Код: Выделить всё
SendMessage WindowFromPoint(Curs.X, Curs.Y), WM_LBUTTONDOWN, 0, &H200020
DoEvents
SendMessage WindowFromPoint(Curs.X, Curs.Y), WM_LBUTTONUP, 0, &H200020
DoEvents



Все хорошо кнопки на форме у меня частично срабатывают на клик

но как реализовать реальный клик чтоб можно было нажать на рабочий стол и запустить приложение? или на крестик и закрыть форму

происходят какието странные вещи: например поле АДРЕС в ИЕ и проводнике раскрывается если навести на кнопку ВЫПАДЕНИЕ
Также и курсор туда ставится и писать там можно
НО например ссылки не жмуться в самом ИЕ и в окошко для написания сообщения курсор тоже не ставится

Подскажите в чем проблема плиз

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.04.2008 (Пн) 13:57

Bonesnapper, а ты включи мозг и подумай, что делает функция WindowFromPoint.
Lasciate ogni speranza, voi ch'entrate.

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 21.04.2008 (Пн) 14:04

нормально все она делает должна была тыкать на то что наведено
НО все нашел уже то что надо было
Код: Выделить всё
'Before you start this program, I suggest you save everything that wasn't saved yet.
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
'Private Sub Form_Activate()
'    'KPD-Team 1998
'    'URL: http://www.allapi.net/
'    'E-Mail: KPDTeam@Allapi.net
'    Do
'        'Simulate a mouseclick on the cursor's position
'        mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0&, 0&, cButt, dwEI
'        DoEvents
'    Loop
'End Sub

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.04.2008 (Пн) 14:06

Bonesnapper писал(а):нормально все она делает должна была тыкать на то что наведено

Ерунда.
Lasciate ogni speranza, voi ch'entrate.

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 21.04.2008 (Пн) 14:15

РОФЛ

PS А Хакер все-таки занудничает ;)

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 21.04.2008 (Пн) 14:20

The WindowFromPoint function retrieves the handle of the window that contains the specified point.

я думал что hwnd находит и туда клик посылается 8)
не так чтоли?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 21.04.2008 (Пн) 14:25

Ramzes
Пойдёшь создавать БУНТ2? :)
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.04.2008 (Пн) 15:01

Bonesnapper писал(а):я думал что hwnd находит и туда клик посылается 8)

Так.
А теперь подумай, какой hWnd может быть у ссылки?
Lasciate ogni speranza, voi ch'entrate.

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 21.04.2008 (Пн) 15:14

Хакер
а как же :D
а ты уже боишься?
Да и вообще у меня в планах согнать всех админов и модеров, отсавить только Алибека (там родственые связи) :)

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 21.04.2008 (Пн) 15:18

ну ссылкия для примера написал
просто оказалоссь что у кучи всяких кнопок нет хендла :)
(или это вообще не правильные кнопки)

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.04.2008 (Пн) 15:30

Bonesnapper писал(а):ну ссылкия для примера написал
просто оказалоссь что у кучи всяких кнопок нет хендла :)
(или это вообще не правильные кнопки)

Разумеется. У объектов web-страниц их нет. И у кнопок панели инструментов их тоже нет. И у нестандартных графических кнопок их тоже может не быть.
Lasciate ogni speranza, voi ch'entrate.

AjaxVS
Постоялец
Постоялец
 
Сообщения: 506
Зарегистрирован: 01.12.2004 (Ср) 13:12
Откуда: Donetsk, Battle.Net

Сообщение AjaxVS » 22.04.2008 (Вт) 23:54

хех. зашел посмотреть, как у вас дела.. привет всем! :)

ах, да.. как дела.. у вас все стало еще хуже :(
демогогия, упреки новичков, показуха собственной "гурости" и т.д. и т.п... и все это вместо того, чтобы просто назвать одну-единственную API-функцию..

печально.. может, мой пост заставит вас об этом задуматся.
ну ладно, всем пока, не буду мешать вам любоваться в зеркало, не замечая собственного бревна в глазу.
gl, maybe will see you @ West ;)

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 23.04.2008 (Ср) 6:28

gjghjc писал(а):А вот насчет оскорблений Хакера это ты очень погорячился.
Не очень. Он реально достал своей снобской манерой общения. А человека, который не торчал на этом форуме 6 лет и с ней не знакомого, это сильно выбивает из колеи. На моей памяти не один прецедент. Хакеру очень хочется быть похожим на GSerg'a, который мог поставить бредоносца на место одной-единственной емкой, хотя и резкой, фразой, однако не по сеньке шапка. Резкость, язвительность перенял и приумножил, лаконичность - нет. Одна фраза - допустимый уровень воспитательного воздействия, а когда отплясывют чечетку на теле оппонента, чья позиция заведомо слабее, да еще под прикрытием администраторских полномочий... Ближайшая ассоциация - гопота, прессующая младшеклассников. До быдла - один шаг.

*Мерзко хихикая, пашол регить юзера "VBb|D/\0", чтоб не пропадало :geek:
Лучший способ понять что-то самому — объяснить это другому.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 23.04.2008 (Ср) 9:48

Я считаю так: "Если кому что не нравится - пусть проваливают" Лично мне пассажи Хакера нравятся. Да, у G'Serga были короче. Ну и что?

_________________

И еще, Хакер, ну замени уж юзерпик! Весна на дворе же!
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 23.04.2008 (Ср) 9:54

Лично мне пассажи Хакера нравятся.

Это до тех пор, пока они не направлены в твой адрес.
Лучший способ понять что-то самому — объяснить это другому.

gjghjc
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 659
Зарегистрирован: 13.10.2002 (Вс) 8:28
Откуда: БАЛАКЛАВА!!

Сообщение gjghjc » 23.04.2008 (Ср) 10:01

Antonariy
Даже если человек и достал своей манерой общения, то оскорблять его, называя быдлом, тоже не делает чести Kichiro.
Я в последнее время для себя провожу этакий мониторинг того как народ общается в сети. Так вот к сожалению заметил такую вещь, что те кто общается в сети давно (не зависимо от возраста), делают это почти также как и в реале стоя лицом к лицу с оппонентом, а те кто только ворвался в этот безграничный мир считают что им тут можно многое. Поскольку их тут никто не знает лично, а следовательно и наказания за оскорбления не будет. Ну забанят, ну и что? Разве ж это наказание? Нет, это НАГРАДА!!! Он еще после бана себя великомучеником будет выставлять, как же он спросил а его оскорбили в лучших чувствах, а когда попытался защищаться тут его и забанили. В моей копилке уже несколько таких случаев, когда человек первым нарушивший правила пытался себя выставить героем национального масштаба.
А если абстрагироваться от всех ответов, в том числе и от ответа Хакера, и просто прочитать вопрос топикстартера, то в нем действительно все очень запутано.

*Мерзко хихикая, пашол регить юзера "VBb|D/\0", чтоб не пропадало

Э-эх опередил :) Хотя..... пойду ка и зарегю ник |-|EVBb|D/\0!
Утро добрым не бывает!

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 23.04.2008 (Ср) 11:46

Если уж абстрагироваться совсем, то адекватный ответ на мутный вопрос топикстартера должен был выглядеть так:
"Какая проблема?"
И все! Старая еврейская народная игра - отвечать вопросом на неудобный вопрос. Просто и демократично. Главное не увлекаться.
а следовательно и наказания за оскорбления не будет
Так же как и за снобизм. Палка о многих концах. Тем более, что топикстартер был оскорблен первым. Оскорблен не бранным словом, а унизительным обращением.
Лучший способ понять что-то самому — объяснить это другому.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 23.04.2008 (Ср) 13:12

Хакеру очень хочется быть похожим на GSerg'a

Откуда такая информация? Вообще-то нет.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 23.04.2008 (Ср) 14:17

Перечитал пост Antonariy и хочу сказать следующее:

Хакеру очень хочется быть похожим на GSerg'a, который мог поставить бредоносца на место одной-единственной емкой, хотя и резкой, фразой, однако не по сеньке шапка. Резкость, язвительность перенял и приумножил, лаконичность - нет.

Как я уже сказал, у меня нет стремления быть похожим на кого бы то ни было, в том числе - на ГСерга.

Если бы я действительно стремился скопировать его стиль, я бы скопировал стиль полностью. Как ты можешь видеть, у меня свой стиль. Непохожесть стилей ты даже подчеркнул сам, когда заметил, что ГСерг обычно обходился одной ёмкой фразой, а я ообычно занимаюсь "отплясыванием чечётки".

Я допускаю, что сходство с ответами ГСерг'а возможно, но оно заключается разве что в том, что как мои, так и его ответы иногда были для пользователя жестокими в какой-то степени.

Я даже допускаю гораздо большее сходство в некоторых отдельных ситуациях, но в конкретно данной ситуации, на мой взгляд, сходства настолько минимальны, что я не могу их увидеть. Совершенно несвойственная GSerg'у манера ведения разговора.

Одна фраза - допустимый уровень воспитательного воздействия, а когда отплясывют чечетку на теле оппонента, чья позиция заведомо слабее, да еще под прикрытием администраторских полномочий...

Под прикрытием каких администраторских полномочий, поинтересуемся теперь у тебя, Antonariy, отплясывалась чечётка в этот самый раз? Где то в своём сообщении я упомянул свой администраторский статус? Или я пригрозил своими администраторскими возможностями оппоненту? Или что-то, может быть, ещё? В чём, иными словами, заключается прикрытие администраторскими полномочиями? Может быть, по твоему, я, когда писал этот язвительный (по твоему, опять же) комментарий, ощущая всю свою администраторскую власть, надеялся, что никакого резкого ответа в свой адрес не получу? А если и получу, то смогу его подтереть, а "ответчика" - наказать? Так ведь заметь, я этого персонажа даже не забанил. И не вынес даже замечания. Потому что я не вижу состава нарушения: он действительно сказал обидную фразу, но сказать обидную фразу ещё не значит оскорбить ею.

Во всяком случае, не будь я администратором, этот комментарий появился бы здесь таким же, какой он здесь есть сейчас. Где же ты видишь прикрывательство, а?

Что же касается оскорблений. Если его ответная реакция не смогла меня обидеть, то твоя гораздо менее обидная фраза "Хакеру очень хочется быть похожим на GSerg'a" меня задела.

И ключевое слово здесь не "GSerg", а "быть похожим" т.е. "подражать". По моим, опять же, убеждениям, стремятся "быть похожими" на кого-то, подражать кому-то обычно те люди, которые не обладают собственным достоинством. Такие же убеждения у меня имеются и на счёт собственного мнения и поддакивания некоторых личностей мнению каких-либо авторитетных лиц. Я уже писал об этом в одном нехорошом топике об IQ.

Я никогда не стремлюсь быть похожим на кого-либо, и иметь такое мнение, которое бы совпадало с чьим либо другим исключительно потому, что этот кто-то другой имеет какую-либо значимость в какой-то среде.
Последний раз редактировалось Хакер 23.04.2008 (Ср) 15:38, всего редактировалось 1 раз.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 23.04.2008 (Ср) 14:20

А два поста подряд писать не стоило... Можно было и первй подредактровать ;)
I don't understand. Sorry.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Сообщение jangle » 23.04.2008 (Ср) 14:48

Хе-хе забавный топик, если дело так дальше пойдет, народ скоро будет спрашивать - как отловить событие нажатия кнопки Reset на системном блоке.. :)

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 23.04.2008 (Ср) 17:37

Насчет "хочется быть похожим", это не информация, это мое имхо. Составленное по динамике тона твоих постов (который резко пошел на ужесточение после наделения полномочиями) и стилистическим заимствованиям (которыми сам иногда грешу) за все время твоего бытия здесь. И раз задело - значит я прав. Вернее я в этом еще больше уверен.
Под прикрытием каких администраторских полномочий, поинтересуемся теперь у тебя, Antonariy, отплясывалась чечётка в этот самый раз?
Тех, которыми ты обладаешь.
Где то в своём сообщении я упомянул свой администраторский статус? Или я пригрозил своими администраторскими возможностями оппоненту?
Нигде и не грозил. Где, в свою очередь, я писал, что ты ими прикрываешься? Нет, ты не прикрываешься, прикрытие (я ранее написал под прикрытием - к моим словам не придерешься) работает само собой. С одной стороны укрепляя тебя в праве унижать собеседника, провоцировать, а с другой стороны прикрывают доброжелатели:
alex_gearbox писал(а):Kichiro, ты совершенно не прав, ужасно не прав на счёт Хакера! Скажи спасибо, что хоть кто-то ответил на твой... вопрос.
alex_gearbox писал(а):Хакер -- администратор, который за оскорбление тебя забанит.
gjghjc писал(а):А вот насчет оскорблений Хакера это ты очень погорячился.
Короче, полномочия - раскрепощают.
Так ведь заметь, я этого персонажа даже не забанил. И не вынес даже замечания. Потому что я не вижу состава нарушения: он действительно сказал обидную фразу, но сказать обидную фразу ещё не значит оскорбить ею.
Великодушный Хакер = безалкогольная водка :) Извини, не верю. Не оскорблен, но основная причина по-моему в следующем: ты можешь себе позвлоить отмахнуться от автора как от пылинки. Он для тебя ничего не значит - какая разница, забанен, нет. Тем более, что скорее всего он уже не вернется. Опять же - маза показать "великодушие" через игнорирование нарушений правил. "А на самом деле я белый и пушистый". А ведь какая разница, что ты решил не оскорбляться? Общественность однозначно определила слова автора как оскорбление. Общественность имеет право быть уверенной, что нарушения будут наказываться. Это если выполнять администраторские обязаности беспристрастно и ответственно. Однако увы, беспристрастный Хакер = великодушный Хакер. :)

Ты очень мнительно и многословно реагируешь на всякие вилами по воде писаные домыслы о своей персоне (что их лишь подтверждает), однако о причине всего этого - ни слова. Как насчет комментариев к "оскорблению унизительным (издевательским - так точнее) обращением"?
Лучший способ понять что-то самому — объяснить это другому.

След.

Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

    TopList