c - Xlib:绘制一个文本输入框并在输入时读取文本

标签 c text keyboard xlib

我正在尝试实现一个文本框,用户可以在其中键入、使用箭头键、退格键、删除键等。我希望能够知道此文本框中的内容,而无需用户提交任何内容。我想我可以捕捉按键事件,找到一种显示光标的方法,并基本上手动构建一个最小文本编辑器——但也许这会重新发明轮子?

我追求的是类似拼字游戏的东西。您在窗口的顶部有几个字母,在底部有一个文本框。每次您键入一个字母时,它就会从顶部 Pane 中消失,以便您知道何时用完了它们。我希望能够使用箭头键编辑该文本,因为 7 个字母拼字游戏不会给我我希望用段落来完成此操作。

我有窗口显示,源文件被处理并显示为允许的字母列表……我只想在用户输入句子时更新允许的字母列表。 Xlib 可以做到这一点吗?还有其他更合适的吗?谢谢!

最佳答案

Can Xlib do this?
为什么是的,Xlib 可以做很多事情。通过使用 X 的 event processing,您所描述的内容似乎很简单和 drawing functions .

不过,Xlib 相当笨拙,IMO 你应该只在需要接近 X 协议(protocol)时才使用它。 (即便如此,也有更新的替代品,如 XCB。但我离题了。)

您可能会发现使用 GTK+ 或 Qt 等现代工具包更容易。

例如,这可能表示为 GtkEntry使用“按键事件”处理程序。

关于c - Xlib:绘制一个文本输入框并在输入时读取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4791123/

相关文章:

java - 继承自Thread的一个类让CPU运行100%

c - 如何在 C 中创建两个同时运行的无限循环?

javascript - 在 JS 中获取 HTML 输入字段中的书面文本

Javascript:转义键 = 浏览器后退按钮

keyboard - MacOS 中方向键的意外输出

java - 当我 JAR 我的程序时,Java 将资源文件放在哪里?

编译器在声明未定义类型的指针时不显示错误

c - C 编程语言(第二版): Exercise 1-15 (Celsius to Fahrenheit conversion) - What is wrong with my solution?

c++ - 加载 "big"纹理文件时出现段错误

json - Sharepoint Online (2013) 列格式不起作用