如何开始自定义 GUI 小部件

How to get started on custom GUI widgets

我想练习使用非标准图形界面的编程软件,例如下图中的那些。我知道如何使用基本小部件创建 GUI,但我不知道如何创建我自己的自定义小部件。我熟悉 GTK 3.0 和 Qt。例如,GTK 教程有一个关于如何进行自定义绘图的 link。我只是不知道这是否是创建自定义小部件的通常且正确的方法。还有一些东西,例如:选择、鼠标操作、缩放、滚动、动画等等教程没有教。

所以这是我的问题:我应该寻找什么样的文档、关键字、教程和算法?对于我的第一个项目,我想从类似于下面第一张和第二张图片的内容开始。我目前的知识是 C/C++ 和 Qt 和 GTK,但如果需要我可以学习新的语言和工具。

Qt Graphics view Framework is what you should use if you go with Qt. There are several examples 涵盖了创建组件的基础知识。

为了能够模仿这些示例,大部分工作将用于实现自定义图形视图项。与小部件一样,它意味着提供一种绘制方法、专门的事件处理程序和属性。