全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1481
推到 Plurk!
推到 Facebook!

如何發送中文字串?

答題得分者是:ccchen
takdick
一般會員


發表:50
回覆:63
積分:22
註冊:2002-08-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-10-18 14:29:09 IP:218.103.xxx.xxx 未訂閱
var h:hwnd; s:string; i:integer; begin s:='hello'; for i:=1 to length(s) do begin h:=childwindowfrompoint(findwidow('notepad',nil),point(50,50)); if i <> 0 then sendmessage(h,wm_char,ord(s[i]),0); end; 以上代碼可向記事本的光標處發送字串,如果s:='你好嗎',是中文字串的話會變成錯碼?請問如何解決?(不用wm_settext,我要在光標處加入字串) 發表人 - takdick 於 2002/10/18 19:11:54
ccchen
版主


發表:61
回覆:940
積分:1394
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-10-19 10:31:28 IP:203.217.xxx.xxx 未訂閱
如果s:='你好嗎' 直接用你的程式Run, 很好啊
takdick
一般會員


發表:50
回覆:63
積分:22
註冊:2002-08-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-10-19 15:34:39 IP:203.198.xxx.xxx 未訂閱
我就是試過了,但在notepad裡顯示的'An' 如果s:widestring;顯示的是些怪字符. 發表人 - takdick 於 2002/10/19 16:05:19
ccchen
版主


發表:61
回覆:940
積分:1394
註冊:2002-04-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-10-20 12:21:58 IP:203.217.xxx.xxx 未訂閱
不知你們的系統有何差異, 我直接run你的程式除findwidow少一個n, 都很好 如果s:widestring;顯示的是些怪字符. widestring當然不可以,sendmessage(h,wm_char,ord(s[i]),0); 一次送一個byte, 而i增加時一次前進2bytes 直接模擬鍵盤看看 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=21387
takdick
一般會員


發表:50
回覆:63
積分:22
註冊:2002-08-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-10-20 15:43:39 IP:203.198.xxx.xxx 未訂閱
這麼奇怪呀.你認為會有什麼原因呢? 模擬鍵盤怎麼發送中文字嗎?是否要先切換輸入法?太麻煩了. 我聽說可用wm_copydata,不知行否?還請指教個用法,
系統時間:2024-04-25 17:27:13
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!