菜单

编码器接口

下载

介绍

主要是对编码器相关代码做一个粗略的介绍,具体内容可以在 Util.h 里面找到

⚠️ 在使用 usb 外设如编码器、外接键盘、外接鼠标或者其他外接设备时,需要勾选

接口展示

c++ 复制代码
/**
 * @brief 输入设备编码器
 */
class ENCODER {
public:
	static void sendKey(uint32_t key);//设置编码器当前的按键(0~无按键 1~确认键 2~上一个 3~下一个)
	static void sendChar(uint32_t c);//向焦点控件发送一个控制字符
	static void addObject(STTWidget* w, STTPage* frm = NULL);//将控件加入编码器控制的组
	static void addObjects(vector<void*> vec);//将lv对象加入编码器控制的组
	static void addObjects(vector<STTWidget*> vec);//将lv对象加入编码器控制的组
	static void removeObject(STTWidget* w);//将控件移出编码器控制的组
	static vector<void*> clearObjects();//将所有控件移出编码器控制的组,返回清除前的列表
	static void focusObject(STTWidget* w);//选中指定控件
	static void focusNext();//选中下一个,同sendKey(3)
	static void focusPrev();//选中上一个,同sendKey(2)
	static void enter();//确认,同sendKey(1)
	static void focusFreeze(bool b);//是否选定冻结(冻结时,不能选中其他控件)
	static void showCursor(bool b);//是否显示光标(默认关闭)
	static void wrap(bool b);//是否循环选择,默认为true(是:当前选中最后一个,再点下一个,则回到第一个)
	static void editing(bool b);//手动设置是否编辑模式 0~浏览模式 1~编辑模式
	static STTWidget* getFocused();//获取选中的STTWidget
	static void addIme();//把输入法加入编码器控制的组
	static void removeIme();//把输入法移出编码器控制的组
	static void focusToImeOkButton();//在打开输入法的情况下,直接移动到OK键上
	static bool enabled;//是否启用编码器标记
	static void enableEncoder(bool b);//是否启用编码器
	static int lastKey;
	static void setCursorType(int type);//0:箭头指针 1:手指指针
	static void showOutline(bool b);//是否给焦点控件设置轮廓,默认没有轮廓
	static void setOutline(int color, int width);//默认红色,宽2
	static int color;//轮廓颜色
	static int width;//轮廓宽度
	static bool isShowOutline;//是否显示轮廓
	static void showWidgetOutline(STTWidget* w);//将轮廓设置应用到指定控件上(内部调用)
	static void openImeOnce(bool b);
	static bool isImeOnce();
	static void reset();
};

使用方法

下面代码以显示/不显示鼠标指针为例

c++ 复制代码
// 不显示鼠标指针
ENCODER::showCursor(false);
上一个
面板类控件
下一个
(标准)时间戳转化设置时间
最近修改: 2026-03-18Powered by