我的 D6 "語法提示" 功能失效了 ><" |
尚未結案
|
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
|
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
|
阿子
站務副站長 發表:120 回覆:230 積分:201 註冊:2002-03-18 發送簡訊給我 |
ha0009: 若是要呼叫出Code Insigth 的快速鍵 而原本設定Ctrl + Space 在這之前就有跟中文WIN 的輸入法重複,而我的作法是將 keyborad 左邊的 Ctrl + Space 關掉, 但右邊的 Ctrl + Space 還是可以中/英切換. {Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys] [HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000010]
"Key Modifiers"=hex:02,40,00,00
[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000070]
"Key Modifiers"=hex:02,40,00,00 而另一個是查看函數所需要代入的參數是Ctrl + Shitf + Space <--我是沒碰過有問題,而自動完成程式碼的功能是Ctrl+J 是有碰問題但最後的方法是是選擇改Delphi IDE 的 快速鍵。 作法如下使用OTA 的方法去作
開一個package (dpk)在加入這個unit在直接編譯,掛到ide中就可以了。 unit UnitNewKeyMap; interface uses Windows, Classes, SysUtils, Menus, ToolsAPI, Controls; procedure Register; implementation type TBufferList = class(TNotifierObject, IUnknown, IOTANotifier, IOTAKeyboardBinding) function GetBindingType: TBindingType; function GetDisplayName: string; function GetName: string; procedure BindKeyboard(const BindingServices: IOTAKeyBindingServices); protected procedure CodeCompletion(const Context: IOTAKeyContext; KeyCode: TShortcut; var BindingResult: TKeyBindingResult); end; procedure Register; begin (BorlandIDEServices as IOTAKeyBoardServices).AddKeyboardBinding(TBufferList.Create); end; procedure TBufferList.BindKeyboard(const BindingServices: IOTAKeyBindingServices); begin //請在這修改你要的hotkey(預設是用alt space) BindingServices.AddKeyBinding([ShortCut(VK_SPACE, [ssAlt])], CodeCompletion, Pointer(csCodeList or csManual)); end; procedure TBufferList.CodeCompletion(const Context: IOTAKeyContext; KeyCode: TShortcut; var BindingResult: TKeyBindingResult); begin (Context.EditBuffer.TopView as IOTAEditActions).CodeCompletion(Byte(Context.Context)); BindingResult := krHandled; end; function TBufferList.GetBindingType: TBindingType; begin Result := btPartial; end; function TBufferList.GetDisplayName: string; begin Result := 'NewCode_Completion_HotKey'; end; function TBufferList.GetName: string; begin Result := 'NewKeyMap'; end; end.當然若是改IDE 不是一定要自己寫OTA 可以使用網路有作好的專家工具(GExperts的IDE memu shortcuts)來修改(但不是全部)修改範疇只有功能表上能出來的項目可以修改。 以上提供給您作個參考 ^^ 從思考取勝一切~q
------
從思考取勝一切~q |
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
|
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
|
Paicaso
中階會員 發表:140 回覆:124 積分:52 註冊:2002-09-04 發送簡訊給我 |
|
chan_huang
一般會員 發表:0 回覆:1 積分:0 註冊:2007-05-03 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |