winapi - 如何在 Win32 中设置 Emoji 弹出位置
问题描述
Windows 10 通过热键 Windows+dot 添加了 Emoji 对话框。自 2017 年以来。我的应用程序如何设置该对话框的位置,以在应用程序的插入符号附近显示它?欢迎使用 C++ 示例。
我的应用程序使用自定义绘制的控件,带有自制的插入符号(用 Delphi 编写)。
解决方案
您可以将焦点设置到 Edit 控件并调用keybd_event或SendInput
例如,使用 Edit 控件hEdit1和keybd_event:
SetFocus(hEdit1);
keybd_event(VK_LWIN, 0, KEYEVENTF_EXTENDEDKEY, 0);
WORD nVkCode = LOBYTE(VkKeyScanEx('.', GetKeyboardLayout(0)));
keybd_event(nVkCode, MapVirtualKey(nVkCode, 0), 0, 0);
keybd_event(nVkCode, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP, 0);
推荐阅读
- java - 如何使用包含列值的表达式作为带有 Java Spring 数据 JPA 规范的 SQL-where 子句
- amazon-web-services - 具有动态内容的 Terrafrom 动态块
- discord.js - 如何每隔 5 分钟更新一次我的 Discord 机器人的状态?
- android - Android Firebase:使用equalTo过滤并同时按不同的孩子排序
- docker - 没有云的 Hyperledger Fabric 的本地部署
- azure - 如何为 Azure 虚拟机上运行的 Web 应用程序设置 healthprobe?
- python - 我如何在 tkinter 中创建一个按钮将显示页面更新为其他内容
- c++ - 如何在 C++ 11 中使用小时分钟和秒查找两个日期之间的持续时间?
- java - 使用参数化构造函数(带有必填字段)和设置器,而不是使用构建器设计模式
- javascript - 难以通过网络蓝牙连接热敏打印机