gpt4 book ai didi

python - 如何使用鼠标事件在 Gtk.Fixed 小部件中拖动对象?

转载 作者:太空宇宙 更新时间:2023-11-03 16:26:52 32 4
gpt4 key购买 nike

我有一个自定义对象(一个小圆圈)放置在 Gtk.Fixed() 小部件内的某个位置。有没有办法使用鼠标拖动该对象。我无法映射鼠标按下/释放/移动事件来完成这项工作。

我更喜欢使用 PyGobject 的 Python 解决方案,但如果提供解释,任何其他语言也可以

更多详情:我正在尝试制作一个字体编辑器,其中我上面提到的这些对象将是字形轮廓中贝塞尔曲线的控制点这是概念设计的图像: https://github.com/sugarlabs/edit-fonts-activity/blob/gh-pages/files/img/wireframe_concept_01_first_prototype.svg我需要能够移动显示的点来编辑显示的字母的轮廓

最佳答案

GtkFixed 不是为绘图工作而设计的。它用于在固定网格(类似于 Windows)上定位小部件(例如按钮等)。

如果您想移动绘图的元素,请查看例如。古 Canvas 。 goocanvas 上的每个元素都可以连接事件,然后可以使用这些事件来移动它。您甚至可以使用 CanvasGroup 对基元(圆形、矩形等)进行分组,并将它们移动到一起(甚至更改其他属性,例如颜色、线宽)。工具箱实际上包含曲线等。使用小矩形可以轻松创建“ handle ”。

Here's an example一个简单的 goocanvas 程序,您可以找到下载链接、引用手册和其他有用的东西 here .

我不知道这是您需要的工具,还是只是一个学习练习。如果是前者,请看看 FontForge ,一个开源字体编辑器,用途极其广泛。

关于python - 如何使用鼠标事件在 Gtk.Fixed 小部件中拖动对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37903355/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com