3dgen / cppwasm-book

:books: WebAssembly friendly programming with C/C++ -- Emscripten practice
1.35k stars 166 forks source link

键盘事件只能处理ascii字符,并不能处理输入法相关的事件导致不能输入中文 #18

Open chunyisong opened 3 years ago

chunyisong commented 3 years ago

怎么做才能支持输入法,进而能输入中文呢?

3dgen commented 3 years ago

没有什么应用需要直接向Canvas输入中文吧?书中的例子是为了解决游戏应用中截获键盘输入状态(比如控制行走方向等)的场景。 如果是需要处理长串的文本,创建一个文本框压在Canvas上,通过这个文本框接收字符串。

chunyisong commented 3 years ago

谢谢回复!使用html和js处理简单的输入时没问题的。 但实际上我们开发的电力应用就需要与用户交互表单内容,进行设备参数维护,维护的字段多且逻辑复杂,字段值类型繁多,如果使用html处理就相当于用html和js重写维护逻辑了,这就偏离了我们仅打算与html做少量自定义交互的规划,带来开发工作量和成本问题。 希望emscripten能够有支持输入法事件的计划。

3dgen commented 3 years ago

这种强业务流程的C端程序,传统上都会基于大UI框架吧。wasm上跑MFC是不可能了,QT好像有计划可以关注下。