自动生成gtk回调函数

时间:2018-01-29 21:08:54

标签: c gtk glade boilerplate

我刚开始在Slackware 14.2上使用Glade 3.8.5。我已成功创建了一个带有“destroy”信号回调处理程序的简单窗口。这对于一个小而简单的教程来说很好。但是,手动实现所有回调函数可能会很繁琐。如果GUI有点复杂,我甚至有可能忘记一些。是否有任何工具可以自动为c中的回调函数生成骨架?我无法通过网络搜索找到任何内容,我也不确定要搜索的标签。

2 个答案:

答案 0 :(得分:2)

不确定我是通过“手动实现所有回调函数”理解你的意思。实现是回调函数的内容,写它是你的工作,因为你是唯一一个知道你想要实现什么的人。

  

如果GUI有点复杂,我甚至有可能忘记一些

每个小部件都有很多很多信号。 Glade可以帮助您设计UI,但您只需要实现默认配置不适合您要实现的功能。

现在,如果通过“手动实现所有回调函数”,你的意思是“手动编写回调骨架”,那么在某些时候,glade会有一些代码生成功能,但是已经(右侧)删除了。那是因为修改生成的代码是一个混乱的维护。对该骨架进行编码只需复制/粘贴文档中的信号签名并为您的回调命名。

答案 1 :(得分:0)

Anjuta确实内置了Glade。我最近决定使用Anjuta和GTK + 3.2来开发一个小项目。例如,在Anjuta内部有一些怪癖,您必须使用鼠标“shift”键在UI开发窗口中移动小部件(例如按钮,标签等)(在Glade中,工具栏上有一个符号单击它可以让你用鼠标移动小部件。)

具有讽刺意味的是,你提出了关于小部件信号处理的骨架函数的具体问题。我在Anjuta构建项目时发现了同样的问题。我注意到默认情况下,总是在窗口上创建“destroy”窗口回调函数。如果我发现如何让Anjuta创建骨架函数,我将回发....如果不是,我将只使用复制/粘贴并根据需要进行修改。