推 hhmmjj:感謝~動手來試看看^^ 12/28 19:41
※ 引述《hhmmjj (ξ科ξ)》之銘言:
: 回NDark大的疑問
: 鍵盤的訊號是我用來改變3D視野的按鍵
: 比如說我今天要往左看我就按F,要往右看就按H
: 這樣他的視野就會跟著改變
: 我目前是用SendKeys卻無法作用到3D裡面
: 不知道是不是有甚麼好方法可以指點呢?
: 感謝
: ※ 引述《hhmmjj (ξ科ξ)》之銘言:
: : 作者: hhmmjj (ξ科ξ) 看板: C_Sharp
: : 標題: [問題] 如何送出鍵盤訊號(非使用Sendkey.Send())
: : 時間: Sun Dec 28 16:21:51 2008
: : 由於小弟目前所做的實驗需要用到利用感測器所得到的訊號強弱來
: : 送出鍵盤的訊號給利用DirectX所做的3D畫面
: : 但是我發現用Sendkeys.send()只可以使用在Form上面
: : 當我開啟了3D之後卻無法作用...
: : 我在網路上有查到keybd_event還有SendInput(似乎比較新)
: : 但是不知道如何使用,想請版友指點迷津
: : 感恩~
引用來信
------------------------------------------------------------
當初是希望可以做一個利用視訊攝影機來抓取畫面當中
色塊移動的方向來改變遊戲當中的視角~
遊戲則是現成的遊戲(比如說三國無雙)
當我偵測完色塊移動的方向的時候
我想要送出一個按鍵按下的訊息給遊戲(比如說"F"鍵改變右視角)
------------------------------------------------------------
假設用的是C#,我會這樣做
偵測色塊移動的方向()
{
偵測到往左 : 創造一個往左的鍵盤事件E
}
DX input
{
當發生鍵盤左方向事件 : 做視角改變的動作
}
windows會自動把E放到DX input這裡(不管你的E是怎麼發生的)
這是最聰明的作法.
(其實這串連的步驟也可以土法煉鋼自己來,怎麼做到的不是很重要)
但是前提是這兩個程序是在同一個程式裡面.我會以DX為主,擷取影像為輔.
不過看你描述的情況.顯然你是想用兩個程式來做這兩件事情.
要不就是找出兩個程式之間互傳訊息的方式.
要不就是利用網路(本機端傳給本機端)
前者我不會.後者用不著我.XD
--
"May Balance be with U"(願平衡與你同在)
歡迎參觀 NDark的網站 http://vision.twbbs.org/~ndark/
NDark的MSN LIVE http://ndark.spaces.live.com/
*最新期待遊戲: Empire : Total War
*最新專案 : 代客拼圖宣傳區
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.96.77.176
※ 編輯: NDark 來自: 140.96.77.176 (12/28 19:39)