取键盘指示灯状态
取得键盘提示灯(NumLock、CapsLock、ScrollLock、Compose、Kana)的当前状态。
语法
cpp
class RX784::Device {
Status getKeyboardLEDsState(
KeyboardLEDsState& keyboardLEDsState
);
};
class RX784::Device {
Status getKeyboardLEDsState(
KeyboardLEDsState& keyboardLEDsState
);
};
e
类名 基类 公开 备注 RX784设备 ✔
方法名 返回值类型 公开 备注 取键盘指示灯状态 整数型 ✔ 参数名 类型 参考 可空 数组 备注 键盘指示灯状态 键盘指示灯状态 ✔
.版本 2
.程序集 RX784设备, , 公开
.子程序 取键盘指示灯状态, 整数型, 公开
.参数 键盘指示灯状态, 键盘指示灯状态, 参考
py
class Device:
def get_keyboard_leds_state(self) -> Tuple[Status, Optional[KeyboardLEDsState]]: ...
class Device:
def get_keyboard_leds_state(self) -> Tuple[Status, Optional[KeyboardLEDsState]]: ...
返回值
名称 | 英文 | 说明 |
---|---|---|
状态码 | status | 成功返回 。 |
键盘指示灯状态 | keyboard leds state | 亮灯为真(true)。 |
类型
cpp
struct RX784::KeyboardLEDsState {
uint8_t numLock : 1;
uint8_t capsLock : 1;
uint8_t scrollLock : 1;
uint8_t compose : 1;
uint8_t kana : 1;
};
struct RX784::KeyboardLEDsState {
uint8_t numLock : 1;
uint8_t capsLock : 1;
uint8_t scrollLock : 1;
uint8_t compose : 1;
uint8_t kana : 1;
};
e
数据类型名 公开 备注 键盘指示灯状态 ✔ 成员名 类型 传址 数组 备注 numLock 逻辑型 capsLock 逻辑型 scrollLock 逻辑型 compose 逻辑型 kana 逻辑型
.版本 2
.数据类型 键盘指示灯状态, 公开
.成员 numLock, 逻辑型
.成员 capsLock, 逻辑型
.成员 scrollLock, 逻辑型
.成员 compose, 逻辑型
.成员 kana, 逻辑型
py
@dataclass
class KeyboardLEDsState:
num_lock: bool
caps_lock: bool
scroll_lock: bool
compose: bool
kana: bool
@dataclass
class KeyboardLEDsState:
num_lock: bool
caps_lock: bool
scroll_lock: bool
compose: bool
kana: bool
示例
cpp
#include <iostream>
#include "rx784.hpp"
int main() {
RX784::Device device;
RX784::Status status;
RX784::KeyboardLEDsState keyboardLEDsState;
device.open("COM1");
status = device.getKeyboardLEDsState(keyboardLEDsState);
if (status == RX784::Status::kSuccess) {
if (keyboardLEDsState.capsLock) {
std::cout << "大写锁定已打开" << std::endl;
} else {
std::cout << "大写锁定未打开" << std::endl;
}
} else {
std::cout << status << std::endl;
}
device.close();
}
#include <iostream>
#include "rx784.hpp"
int main() {
RX784::Device device;
RX784::Status status;
RX784::KeyboardLEDsState keyboardLEDsState;
device.open("COM1");
status = device.getKeyboardLEDsState(keyboardLEDsState);
if (status == RX784::Status::kSuccess) {
if (keyboardLEDsState.capsLock) {
std::cout << "大写锁定已打开" << std::endl;
} else {
std::cout << "大写锁定未打开" << std::endl;
}
} else {
std::cout << status << std::endl;
}
device.close();
}
e
方法名 返回值类型 公开 备注 _启动子程序 整数型
变量名 类型 静态 数组 备注 设备 RX784设备 键盘指示灯状态 键盘指示灯状态 状态码 整数型
设备.打开 (“COM1”)状态码 = 设备.取键盘指示灯状态 (键盘指示灯状态) 如果 (状态码 = #RX784状态码_成功) 如果 (键盘指示灯状态.capsLock) 调试输出 (“大写锁定已打开”) 否则 调试输出 (“大写锁定未打开”) 如果结束 否则 调试输出 (RX784状态码到文本 (状态码)) 如果结束设备.关闭 ()返回 (0).版本 2
.子程序 _启动子程序, 整数型
.局部变量 设备, RX784设备
.局部变量 键盘指示灯状态, 键盘指示灯状态
.局部变量 状态码, 整数型
设备.打开 (“COM1”)
状态码 = 设备.取键盘指示灯状态 (键盘指示灯状态)
.如果 (状态码 = #RX784状态码_成功)
.如果 (键盘指示灯状态.capsLock)
调试输出 (“大写锁定已打开”)
.否则
调试输出 (“大写锁定未打开”)
.如果结束
.否则
调试输出 (RX784状态码到文本 (状态码))
.如果结束
设备.关闭 ()
返回 (0)
py
import rx784
device = rx784.Device()
device.open('COM1')
status, keyboard_leds_state = device.get_keyboard_leds_state()
if status == rx784.Status.SUCCESS:
if keyboard_leds_state.caps_lock:
print('大写锁定已打开')
else:
print('大写锁定未打开')
else:
print(status)
device.close()
import rx784
device = rx784.Device()
device.open('COM1')
status, keyboard_leds_state = device.get_keyboard_leds_state()
if status == rx784.Status.SUCCESS:
if keyboard_leds_state.caps_lock:
print('大写锁定已打开')
else:
print('大写锁定未打开')
else:
print(status)
device.close()