OleTranslateAccelerator 函式 (ole2.h)
由物件應用程式呼叫,可讓物件的容器根據容器的快捷鍵數據表來轉譯加速器。
語法
HRESULT OleTranslateAccelerator(
[in] LPOLEINPLACEFRAME lpFrame,
[in] LPOLEINPLACEFRAMEINFO lpFrameInfo,
[in] LPMSG lpmsg
);
參數
[in] lpFrame
可傳送按鍵的 IOleInPlaceFrame 介面指標。
[in] lpFrameInfo
包含從容器取得之快捷鍵數據表 的 OLEINPLACEFRAMEINFO 結構的指標。
[in] lpmsg
包含按鍵的 MSG 結構的指標。
傳回值
此函式會在成功時傳回S_OK。 其他可能的值包括下列專案。
傳回碼 | Description |
---|---|
|
對象應該會繼續處理此訊息。 |
備註
對象伺服器會呼叫 OleTranslateAccelerator ,以允許物件的容器根據容器的快捷鍵數據表,根據 lpFrameInfo 所指向的容器來轉譯快捷鍵按鍵。 雖然自主物件是使用中物件,但對象的伺服器一律會先有機會轉譯所接收的任何訊息。 如果不需要這樣做,伺服器會呼叫 OleTranslateAccelerator ,讓物件的容器有機會。 如果鍵盤輸入符合容器提供的快捷鍵數據表中找到的快捷鍵, OleTranslateAccelerator 會透過 IOleInPlaceFrame::TranslateAccelerator 方法將訊息及其命令標識符傳遞給容器。 如果取用按鍵,這個方法會傳回S_OK;否則會傳回S_FALSE。
應該定義容器的快速鍵數據表,以便與執行自己的快速鍵按鍵翻譯的物件應用程式正常運作。 這些資料表的格式應如下:
"char", wID, VIRTKEY, CONTROL
這是描述鍵盤快捷鍵的最常見方式。 若無法這麼做,可能會導致按鍵在就地會話期間遺失或傳送到錯誤的物件。
物件可以呼叫 IsAccelerator 函 式,以查看快捷鍵按鍵是否屬於物件或容器。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | ole2.h |
程式庫 | Ole32.lib |
Dll | Ole32.dll |
API 集合 | ext-ms-win-com-ole32-l1-1-3 (於 Windows 10 10.0.10240 版) |