Re: [問題] GUI 的穿透
編譯器?
簡單的話,直接呼叫視窗的事件
複雜的話,用 API 做 SendMessage / PostMessage。
拖放的範例很多網站都有,甚至編譯器的開發者可能也有範例。
說清楚編譯器及你要做的東西的話,或許看過該範例的可以告訴你哪裡有。
==> 本文由 "我被淡水的路寵壞了 <afz096.bbs@ptt.cc>"
> 於 news:4dkW49%2489c%40ptt.cc 發表
> 用穿透這字眼無法確切的形容
> 將問題詳述如下
> 一個視窗上面有其他的物件,
> 而這些物件幾乎將整個視窗佔滿。
> 而當我滑鼠在視窗上 click 或是拖曳時,
> 這些 event 會被視窗上面的物件擷取,
> 而我希望這些 event 可以直接傳給視窗。
> 圖示說明如下
> ┌─────────┐
> │視窗 a │
> │ ┌──────┐ │
> │ │ 物件一 │ │
> │ └──────┘ │
> │ ┌──────┐ │
> │ │ 物件二 b │ │
> │ └──────┘ │
> └─────────┘
> 當滑鼠在 a 點 press,在 b 點 release,
> a 點 press 的 event 會被視窗擷取,
> b 點 release 的 event 會被物件二擷取,
> 想知道有甚麼樣的方式,可以讓物件二所擷取的 event 可以傳給視窗。
> 兩個想法如下:
> 第一個是當視窗內的物件產生的時候,順便將視窗的 reference 傳進去,
> 所以物件接受到 event 時,可以藉由 reference 交給視窗解決。
> 可是這樣的缺點是,當視窗內的物件越多,reference 會越多,記憶體使用效率並不好。
> 另一個想法是,在所有的物件最上層,建立一個完全透明的物件,
> 而所有的滑鼠的 event 都由最上層透明的物件接收,
> 在根據 event 觸發的座標,交給視窗或是相對應的物件來處理。
> 不過這樣要處理好 z 軸的順序,以及物件的透明度,而這是我的問題所在。
> 不知是否還有其他的解法,還請各位指教。
>
--
風禹科技驗證有限公司 ASP.NET Web News Reader 0.2.7 UTF-8 Beta
網站地圖 http://tlcheng.twbbs.org/wwwmap.htm
流域防洪/區域水資源/徐昇網/玫瑰圖/語音通訊 文章與程式
Basic/Fortran/Windows API/.Net/輔助說明檔 原始碼、文章與討論
微軟程式設計、系統管理使用新技術論壇討論區,網友回覆後即時簡訊、電子郵件通知:
MSDN: http://forums.microsoft.com/msdn-cht/default.aspx?siteid=14
TechNet: http://forums.microsoft.com/technet-cht/default.aspx?siteid=23
--
ASPNET News Reader http://tlcheng.twbbs.org/News/Reader.aspx
RSS 2.0 http://tlcheng.twbbs.org/News/rss2.aspx?Action=List&Newsgroup=tw.bbs.comp.language
討論串 (同標題文章)