文档管理中心

大写字母键无效

问题现象

按下外接键盘CapsLock键,输入字母不是大写而是小写。

背景知识

问题定位

根据Hilog日志定位,查看日志关键字CapsLockState,日志CapsLockState为false,判断应用未使能CapsLock键。

收起
自动换行
深色代码主题
复制
  1. A000FF/i.hmos.inputmethod:inputMethod/HMKeyboard_HardwareInputManager: onInputStart. check result currentCapsLockState: false, this.subType?.id: InputEnLowerService

分析结论

应用未使能CapsLock键。

修改建议

参考以下代码使能CapsLock键:

收起
自动换行
深色代码主题
复制
  1. import { inputDevice } from '@kit.InputKit';
  2. import { BusinessError } from '@kit.BasicServicesKit';
  3. @Entry
  4. @Component
  5. struct SetKeyEnabled {
  6. aboutToAppear() {
  7. try {
  8. inputDevice.setFunctionKeyEnabled(inputDevice.FunctionKey.CAPS_LOCK, true).then(() => {
  9. console.info(`Set capslock state success`);
  10. }).catch((error: BusinessError) => {
  11. console.error(`Set capslock state failed`, error);
  12. });
  13. } catch (error) {
  14. console.error(`Set capslock enable error`);
  15. }
  16. }
  17. build() {
  18. Row() {
  19. TextInput()
  20. }
  21. .height('100%')
  22. .width('100%')
  23. .padding(16);
  24. }
  25. }
在 FAQ 中进行搜索
请输入您想要搜索的关键词