我在 C# 中为 word 编写了一个插件。
我想挂钩键盘并捕获 ctrl-c 并读取复制到剪贴板的文本。
我的加载项可以使用下面的代码找到 ctrl-c,
//C# code:
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
.
.
.
Application.KeyBindings.Add(Word.WdKeyCategory.wdKeyCategoryCommand, "KeyCode1",
Application.BuildKeyCode(Word.WdKey.wdKeyControl , Word.WdKey.wdKeyAlt , Word.WdKey.wdKeyD));
}
public void CallKey(int i)
{
switch (i)
{
case 1:
MessageBox.Show("Ctrl+C");
break;
}
}
//VBA code:
Function GetAddin() As Object
On Error Resume Next
Dim addIn As COMAddIn
Dim automationObject As Object
Set addIn = Application.COMAddIns(“WordKeyBinding”)
Set automationObject = addIn.Object
Set GetAddin = automationObject
End Function
Public Sub KeyCode1()
On Error Resume Next
GetAddin.CallKey 1
End Sub
现在我的问题是当我按 ctrl-c 时,会显示消息框但没有任何内容复制到剪贴板!我应该怎么办?