【发布时间】:2016-09-19 18:48:15
【问题描述】:
我是 GTK+3 的新手,我想创建一个自定义绘图小部件(可能是网格)。我需要能够为我的逻辑门模拟器拖放逻辑对象。如何才能做到这一点?绘图区应位于包含逻辑对象的菜单旁边。
【问题讨论】:
我是 GTK+3 的新手,我想创建一个自定义绘图小部件(可能是网格)。我需要能够为我的逻辑门模拟器拖放逻辑对象。如何才能做到这一点?绘图区应位于包含逻辑对象的菜单旁边。
【问题讨论】:
我可能会建议您在 GtkScrolledWindow 中使用 GtkDrawingArea。所有绘图都必须使用Cairo 进行自定义。绘制一个网格,然后手动处理您的逻辑对象的排列。您可以将GtkToolItem 小部件之一用于对象的顶部或侧边框。
这是第一次雄心勃勃的项目,但与我的第一个主要项目非常相似。它使用了一个非常相似的 GtkDrawingArea 想法。它在 Perl 中,是here on GitHub。如果您能解读 Perl,它可能会为您提供一些关于如何完成自定义小部件的想法。
【讨论】:
在我看来,您的要求似乎更适合画布。 Ridley 项目包括a selection 的候选画布,这些候选画布将包含在 GTK+ 中。现在不确定这是否仍然相关,但该选择是一个不错的选择。
【讨论】: