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

MainMenu快速鍵的問題?

尚未結案
whitesnak
一般會員


發表:8
回覆:3
積分:2
註冊:2005-10-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-05-02 10:43:06 IP:59.112.xxx.xxx 訂閱
我有一個MainMenu使用 ShutCut(CTRL-V) 想做到快速貼上的功能,但我有很多個元件,
如:
Edit1~Edit5、Memo1~Memo3

請問我該如何判斷我的游標是在那一個元件,按下CTRL-V後就將所複製文字貼在那一個元件上。

請各位大大幫幫小弟弟,在下感激不盡。
GGL
資深會員


發表:104
回覆:600
積分:335
註冊:2006-11-05

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-05-02 12:48:11 IP:76.21.xxx.xxx 未訂閱
我只知道用Focused( )可以判斷該元件是否focue....
有點不太懂的是..你所說的Ctrl V已經是系統預設的貼上指令,當你在該元件上的時候,就可以貼上...
為什麼還要判斷目前focus的為何?

whitesnak
一般會員


發表:8
回覆:3
積分:2
註冊:2005-10-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-05-02 14:00:18 IP:59.112.xxx.xxx 訂閱
先謝謝 GGL 大大的幫忙!!
或許是我表達能力有障礙,讓您誤會了....對不起

Ctrl-V只是舉個例,我換個例子好了。
若是我用了MainMenu上ShortCut的功能(Ctrl P),而我有多個元件
如:
Edit1~Edit5、Memo1~Memo3
當我在不同的元件上按下Ctrl P時,會出現不同的Message,這時我該如何判斷我是在那個元件上按下Ctrl P的呢
我試過IF判斷Focused()是可做到,但我想用API的方法來做可是不知該如何達到此功能?
請大大幫幫小弟,感激不盡。
system72
中階會員


發表:15
回覆:114
積分:55
註冊:2005-08-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-05-02 14:30:54 IP:219.80.xxx.xxx 訂閱

方法1.
edit1.onEnter ,
..
edit5.OnEnter 觸發時做紀錄..

這樣就可以紀錄最後一個 focused 的TEdit



方法2,

直接用 form.ActiveControl,

但缺點是 PageControl, groupBox,ListBox 也可 foucsed ,而成為 ActiveControl,
這時,就抓不到 最後一個 Edit.


ccrun
一般會員


發表:0
回覆:3
積分:0
註冊:2004-05-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-05-05 03:03:47 IP:221.204.xxx.xxx 未訂閱
在菜单项的点击事件中处理,判断当前的ActiveControl是否继承自TCustomEdit(因为TEdit和TMemo都继承自TCustomEdit),然后再处理粘贴:

if(ActiveControl->InheritsFrom(__classid(TCustomEdit)))
{
ActiveControl->Perform(WM_PASTE, 0, 0);
}

------
欢迎光临 C++Builder研究 - http://www.ccrun.com
harpist
資深會員


發表:3
回覆:251
積分:430
註冊:2002-10-03

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-05-05 08:47:08 IP:211.74.xxx.xxx 未訂閱
提供一個參考方式
判斷游標在哪一個元件上可以在 Application->OnMessage 裡面攔截訊息
然後用GetCursorPos API 取得游標位置,再利用TControl ScreenToClient 轉換成TControl上的位置點
用這個位置點再用ControlAtPos 抓到目前游標所在的元件,當然你必須要一層一層去過濾


===================引 用 whitesnak 文 章===================
我有一個MainMenu使用 ShutCut(CTRL-V) 想做到快速貼上的功能,但我有很多個元件,
如:
?????? Edit1~Edit5、Memo1~Memo3

請問我該如何判斷我的游標是在那一個元件,按下CTRL-V後就將所複製文字貼在那一個元件上。

請各位大大幫幫小弟弟,在下感激不盡。
------
~§~迷時師渡,悟了自渡~§~
系統時間:2024-11-01 8:08:38
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!