从Delphi代码中打开表情面板
我想通过点击速度按钮,为TEdit打开Windows 10表情面板。可以通过模拟Win+来实现。键组合,但我不确定如何模拟windows键 表情符号面板如下所示 建议?这似乎有效从Delphi代码中打开表情面板,delphi,emoji,Delphi,Emoji,我想通过点击速度按钮,为TEdit打开Windows 10表情面板。可以通过模拟Win+来实现。键组合,但我不确定如何模拟windows键 表情符号面板如下所示 建议?这似乎有效 keybd_event(VK_LWIN, 0, 0, 0); // Left Win down keybd_event(190, 0, 0, 0); // "." down keybd_event(190, 0, KEYEVENTF_KEYUP, 0); // "."
keybd_event(VK_LWIN, 0, 0, 0); // Left Win down
keybd_event(190, 0, 0, 0); // "." down
keybd_event(190, 0, KEYEVENTF_KEYUP, 0); // "." up
keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP, 0); // Left Win up
(根据雷米的建议)
但是如果有更好的建议…你看到了吗?不要使用keybd\u event()
,它早就被弃用了。改用。
procedure ShowEmoji;
var
k: array [0..3] of TInput;
I: Integer;
begin
ZeroMemory(@k,sizeof(k));
for I := low(k) to high(k) do
k[i].Itype := INPUT_KEYBOARD;
k[0].ki.wVk := VK_LWIN;
k[1].ki.wVk := 190;
k[2].ki.wVk := 190;
k[2].ki.dwFlags := KEYEVENTF_KEYUP;
k[3].ki.wVk := VK_LWIN;
k[3].ki.dwFlags := KEYEVENTF_KEYUP;
SendInput(Length(k), k[0], SizeOf(TInput));
end;