Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.05.22;
Скачать: [xml.tar.bz2];

Вниз

Как послать нажатия клавишь другому приложению !?   Найти похожие ветки 

 
Delpher_Gray   (2003-03-20 19:45) [0]

Дарова Делферы !!
Подскажите, как можно послать нажатия клавишь другому приложению !?
Я пробовал что-то вроде:
SendMessage(FindWindow(nil, "Безымянный - Блокнот"), WM_KEYDOWN, 65, nil);
Но это не работает =(
Заранее благодарен !!

---------------------------
www.delphi.vov.ru - Delphi для всех !


 
Song   (2003-03-20 20:24) [1]

Дело в том, что в любом приложении существует масса окон. Например, кнопка - тоже окно, чекбокс - тоже окно. Т.е. нажатие Вы должны посылать тому контролу, который выводит эти символы.


 
Delpher_Gray   (2003-03-21 08:32) [2]

2Song !
Пасибки !!
Щас посмотрю, как в открывалке звёздочек в строке с паролем сделали !!


 
Delpher_Gray   (2003-03-21 08:58) [3]

Неа =(
Не получилось =(
Я посылал в TEdit что-то, но там ничего не отобразилось =(
SendMessage(Wnd, WM_KEYDOWN, а чё писать дальше, незнаю =(


 
MBo   (2003-03-21 09:05) [4]

а хелп не пробовал смотреть на WM_KEYDOWN?


 
Apollo   (2003-03-21 09:27) [5]

Удалено модератором
Примечание: Задай СВОЙ вопрос в отдельной ветке


 
Polevi   (2003-03-21 09:31) [6]

есть потоки ввода-вывода


 
Apollo   (2003-03-21 12:25) [7]

http://www.torry.net/vcl/system/keys/sendkeys.zip Компонет (с исходниками)который это делает. Freeware. Только он для DOS-приложений не все клавиши нажимает (в частности курсор)


 
Aleksey_sv   (2003-03-21 13:36) [8]

Попробуй
hcw:=FindWindowEx(hw,0,"tbutton",nil);
sendmessage(hcw,BM_CLICK,0,0);


 
Севостьянов Игорь   (2003-03-21 15:20) [9]


> Apollo © (21.03.03 12:25)

Вообще то в поставку Делфи входит "\Install\Delphi5\Info\Extras\SendKeys\SNDKEY32.PAS"

SendKeys routine for 32-bit Delphi.

Written by Ken Henderson

Copyright (c) 1995 Ken Henderson email:khen@compuserve.com

This unit includes two routines that simulate popular Visual Basic
routines: Sendkeys and AppActivate. SendKeys takes a PChar
as its first parameter and a boolean as its second, like so:

SendKeys("KeyString", Wait);
where KeyString is a string of key names and modifiers that you want
to send to the current input focus and Wait is a boolean variable or value
that indicates whether SendKeys should wait for each key message to be
processed before proceeding. See the table below for more information.

AppActivate also takes a PChar as its only parameter, like so:

AppActivate("WindowName");

where WindowName is the name of the window that you want to make the
current input focus.

SendKeys supports the Visual Basic SendKeys syntax, as documented below.


Вот там для Windows приложений работает


 
Delpher_Gray   (2003-03-22 12:33) [10]

Компонент SendKeys устроен совсем не так !!
Он просто эмитирует нажатия клавиши !!
А мне нужно полать !! SendMessage !!


 
Song   (2003-03-22 12:39) [11]

WM_KEYDOWN посылает не символ, а нажатие. Вам же надо послать смивол с кодом 65. Для этого используйте WM_CHAR.


 
Snap   (2003-03-22 12:43) [12]

Если тебя интересует не имено послание сообщения, а ввод символа в блокнот, можно просто активизировать блокнот, послать символы через keybd_event, и деактивизировать блокнот. :)))). Способ немного извращенский, но работает.


 
delpher_gray   (2003-03-23 15:00) [13]

Snap !
Это я знаю =)
Я хочу научиться посылать сообщения =)

---------------------------
www.delphi.vov.ru - Delphi для всех !


 
Delpher_Gray   (2003-03-23 15:01) [14]

2Song !
Значет SendMessage(Wnd, WM_CHAR, 65, 0); - будет работать !?!


 
Delpher_Gray   (2003-03-23 15:01) [15]

2Song !
Значет SendMessage(Wnd, WM_CHAR, 65, 0); - будет работать !?!

---------------------------
www.delphi.vov.ru - Delphi для всех !


 
Song   (2003-03-23 15:37) [16]

Конечно.
Только Wnd нужно правильный иметь.


 
Delpher_Gray   (2003-03-23 17:48) [17]

Понял =)
Пасибки !

---------------------------
www.delphi.vov.ru - Delphi для всех !



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.05.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.007 c
11-70200
Sam Stone
2002-08-18 14:21
2003.05.22
KOLMemo


3-70098
Sirus
2003-04-29 17:53
2003.05.22
Как переташить базу из Access в Interbase???


7-70550
dim-
2003-03-22 19:47
2003.05.22
Вопрос про мышь


7-70543
ДмитрийВ
2003-03-24 23:38
2003.05.22
9й бит в rs-232 как проверять?


14-70516
antonn
2003-05-04 05:49
2003.05.22
MMTools





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский