在您看来,在Windows中创建gui的最佳方法是什么?用gtk或win32 api?
你推荐GTK for windows吗?对吗?不是吗?为什么?
小智 21
如果你只为窗户制作gui,我强烈推荐WIN 32 Api.我在GTK +,pyGtk,FLTK中制作了许多应用程序并学习了Qt,MFC和SmartWin ++.相信我,但我最喜欢Win32 Api.它可能有一个陡峭的学习曲线,但对于创建本机Windows应用程序,它是最快和最好的.而且程序越复杂,Win32 Api就越容易与其他工具包相比.在Win32 Api中你可以做的事情,你不能在任何其他工具包中做.
测试:
开始时间(带菜单和按钮的简单gui):GTK + = 7秒; Qt = 4秒; WxWidgets = 3.32秒; FLTK = 1秒; Win32 Api = 0.34秒;
占用空间:Gtk + = 132 kb; Qt = 4.5 mb; WxWidgets = 4.5 mb; FLTK = 54 kb; Win32 Api = 6.5 kb;
Ebo*_*ike 16
让我们来看看.
就个人而言,如果我使用特定于Windows的东西,我会使用.NET - Visual Studio中的工具非常强大,而且它是一个非常全面的套件.
对于与平台无关的东西,我使用Java,但这可能不是您选择的工具.我见过QT用于此目的很多.
Chr*_*ian 13
你真的有很多GUI工具包/框架可供选择:Qt,wxWidgets,GTK +/gtkmm,WinAPI,MFC,.NET WinForms/WPF ......这些只是流行的.
由于你限制自己使用C++,我会删除.NET,因为.NET上的C++旨在充当非托管和托管世界之间的连接.这并不意味着你不能将它用于其他类型的开发,但鉴于尴尬的语法和无数的陷阱,我不会用它.此外,VS的WinForms代码生成器将表单的代码放入头文件中.brrrr
正如其他人所说,WinAPI是用C语言编写的,非常快速和强大,但是级别很低,不易编程/学习.MFC将是一个选项,因为它是用C++编写的,比WinAPI更容易使用,也非常强大.但是,它几乎已经过时了(主要是由于.NET的存在).
我不推荐用于Windows的 GTK +/gtkmm(GTK +的C++包装器),因为你没有得到本机的Windows外观,在你的开发者机器上设置它是相当烦人的,它还拖累了大量的依赖项,你必须安装在用户计算机上.这实际上是一个遗憾,因为特别是gtkmm有一个非常漂亮的类层次结构和设计.可能是设计最好的GUI库之一:)
那说,我会推荐什么?无论是Qt还是wxWidgets.两者都是用(相当现代的)C++编写的,积极开发,具有良好的库设计,运行多平台并提供许多功能.在任何情况下,请参考答案中列出的一些库,看看哪一个可以让你最轻松地完成你想做的事:)
两者都用于 c,但是 gtk (gtkmm) 有一个很好的包装器。
gtk 有自己的外观,所以用户端没有 ui 元素的皮肤(使用 windows 样式)。但我更喜欢用它编程。
win32、mfc、.net 大多仅限于 ms Visual Studio,而 gtk 很难与 vs.
你应该看看 win32、.net、gtkmm 和 qt。试着用它们编写和编译一个简单的 hello world 程序
win32的优点:
缺点:
gtk(mm) 的优点:
缺点:
我过去曾将 GTK+ 用于多平台应用程序。我发现它的学习和使用相对简单。在我看来,GTK+ 的主要优点是您可以将您的应用程序移植到其他窗口系统。主要缺点是它看起来不像其他 Windows 应用程序。如果您正在做跨平台工作或者已经非常熟悉 GTK+(并且没有时间花时间学习新工具包),我会推荐它。
我个人更喜欢 Qt,但这实际上取决于您想要制作什么样的用户界面。
针对 Win32:
低级、高复杂度来完成琐碎的事情。你必须做任何事情
如果你走这条路,我会推荐一本像Petzold那样的书。
专业Qt:
好看的图形用户界面
通过创建样式表可以很容易地改变外观
信号和插槽机制会通知您 UI 事件,例如“单击按钮”等。
漂亮的布局系统
与 Visual Studio IDE 集成
现代面向对象的c++代码,易于理解和使用
Qt 助手(非常好的文档)
相对宽松的许可 (LGPL)
Qt Designer - 可用于表单设计的 WYSIWYG 设计工具
带有丰富的其他 C++ 功能,包括 XML、网络、事件循环、线程、数据库访问等
对抗 Qt:
专业 WPF:
| 归档时间: | 
 | 
| 查看次数: | 27457 次 | 
| 最近记录: |