代码拉取完成,页面将自动刷新
这个插件允许 Flutter 桌面应用定义系统/应用范围内的热键(即快捷键)。
English | 简体中文
Linux | macOS | Windows |
---|---|---|
✔️ | ✔️ | ✔️ |
将此添加到你的软件包的 pubspec.yaml 文件:
dependencies:
hotkey_manager: ^0.2.2
或
dependencies:
hotkey_manager:
git:
path: packages/hotkey_manager
url: https://github.com/leanflutter/hotkey_manager.git
ref: main
运行以下命令
sudo apt-get install keybinder-3.0
import 'package:hotkey_manager/hotkey_manager.dart';
void main() async {
// 必须加上这一行。
WidgetsFlutterBinding.ensureInitialized();
// 对于热重载,`unregisterAll()` 需要被调用。
await hotKeyManager.unregisterAll();
runApp(MyApp());
}
注册/卸载一个系统/应用范围的热键。
// ⌥ + Q
HotKey _hotKey = HotKey(
key: PhysicalKeyboardKey.keyQ,
modifiers: [HotKeyModifier.alt],
// 设置热键范围(默认为 HotKeyScope.system)
scope: HotKeyScope.inapp, // 设置为应用范围的热键。
);
await hotKeyManager.register(
_hotKey,
keyDownHandler: (hotKey) {
print('onKeyDown+${hotKey.toJson()}');
},
// 只在 macOS 上工作。
keyUpHandler: (hotKey){
print('onKeyUp+${hotKey.toJson()}');
} ,
);
await hotKeyManager.unregister(_hotKey);
await hotKeyManager.unregisterAll();
使用 HotKeyRecorder
小部件帮助您录制一个热键。
HotKeyRecorder(
onHotKeyRecorded: (hotKey) {
_hotKey = hotKey;
setState(() {});
},
),
请看这个插件的示例应用,以了解完整的例子。
Method | Description | Linux | macOS | Windows |
---|---|---|---|---|
register | 注册一个系统/应用范围的热键。 | ✔️ | ✔️ | ✔️ |
unregister | 取消注册一个系统/应用范围的热键。 | ✔️ | ✔️ | ✔️ |
unregisterAll | 取消注册全部系统/应用范围的热键。 | ✔️ | ✔️ | ✔️ |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。