繁体   English   中英

gtkmm用于桌面应用程序

[英]gtkmm for desktop application

对某些桌面客户端应用程序使用gtkmm gui工具包是一个好主意吗?

这个工具包是否稳定,是否有足够的在线文档?

我使用gtkmm编写专业应用程序,是的,你可以用它来进行真实的软件开发。

但我也使用过C / GTK +和C ++ / Qt,我的意见是使用Gtkmm你觉得原来的工具包本来是用在C语言中并且移植到C ++是好的但是在很多情况下你觉得C ++的功能可以已被更好地使用。

比较:

如果您必须在Gtk和Gtkmm之间进行选择,请选择Gtkmm,即使您可能发现自己陷入了一些记录不充分或受支持的功能。 最终你总是设法找到一个解决方案(你可以查看源代码),c ++比c更好。

如果您必须在Gtkmm和Qt之间进行选择,请选择Qt。 两者之间存在巨大差距。 不仅在工具包本身,而且在文档和编写应用程序时所需的所有其他类中。

我两个月前用gtkmm开始。 我实际上移植了一个tcl / tk应用程序,让我感觉很困难。 我找到的唯一有用的文档是https://developer.gnome.org/gtkmm-tutorial/3.4/

但是手册中描述的很多东西都不起作用! 我实际上在覆盖信号处理程序时会遇到麻烦,而信号处理程序应该可以工作但却没有。 也许你会看一下gtkmm-list@gnome.org,看看你可能会遇到什么样的问题:-)

从doxygen输入派生的文档对我来说似乎没用,因为函数大部分都没有描述,参数名称或者我常常不太清楚。

与tcl / tk相比,接口看起来不一致。 有时参数必须由文本提供,有时必须由指针提供,有时由本机值本身提供。 特别是基于字符串的配置菜单非常“神秘”。 将参数作为文本的需要是非常不方便的! 您必须将带有ostrstream的参数转换为文本,并有时将参数从文本解析为实际值。

我决定给gtk +一个机会就是存在c ++接口。 我认为在编译时获取错误会有所帮助,而不是像运行tcl / tk一样运行应用程序。 但这并不总是与gtkmm一致。 使用gtkmm,您还可以遇到运行时错误,因为所有字符串参数都将在运行时解析! 这使事情容易出错!

也许我会重新开始并给Qt一个机会。 但是它的第一个观点显示,这似乎并不是更好:-)

编写一个gui应用程序仍然是一个非常烦人的工作!

gtkmm是官方支持的GTK绑定(gtk.org/language-bindings.php)。

“inkscape”和“ardor”是用gtkmm编写的着名应用程序

官方GNOME绑定的绑定遵循GNOME发布计划,该计划保证API稳定性和基于时间的发布。

如果您想用C编写应用程序,请使用GTK +(和GLib)。

你可以找到一个链接到文件http://www.gtkmm.org/https://developer.gnome.org/gtkmm-tutorial/ )。

使用Glade (即PyGTK),您可以快速构建应用程序原型。 使用Glade构建GUI非常简单,生成的UI是一个xml文件,不受编程语言的约束。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM