Where do I start learning about GUI programming?我对C / C,Java和Python等编程语言非常了解。但是他们大多是在大学/高中教室里学习的,最好的用户界面是带有编号的菜单。您知道标准数据结构,各种算法的实现,文件处理等。 我现在要做的是进入GUI编程。我不确定是否要问对的方法,但是我正在考虑使用WIMP范例(Windows图标菜单指针)。我想放置按钮和表格。我相信事件驱动的编程是正确的词,我的应用程序将等到用户单击某些内容,键入某些内容等之后。 鉴于我的背景,哪里是一个不错的起点?我正在查看以下要求- 1>最好是跨平台的。 有什么想法或建议可以帮助我入门吗? 我将尝试《关于面子:用户界面设计的精髓》一书,该书集中于UI设计实践以及考虑用户目标(即用户想要完成的目标)的设计用于"开发人员GUI设计"。 它还回顾了Microsoft,Apple和其他公司有关GUI设计的一些历史。诸如MacOsX的默认值(通常位于接受和取消按钮等)之类的东西,以及其下的原因。 我还将查找适用于Microsoft的Office 2007 UI设计指南,因为它可能"会成为一件事情"。 Shoes for Ruby是跨平台的,非常简单,它是构建窗口和处理其中发生的事件的简要介绍。也很有趣:) 有许多特定于语言和UI框架的资源可供有兴趣构建应用程序UI的人使用。但是,在深入研究特定技术之前,需要学习很多有关人机交互及其在用户界面设计中的应用的知识。要查看的一些参考资料:
在研究了什么是好的UI之后,现在该探讨如何:
当然有很多选择,包括QT,Fltk和SWT 您正在寻找Qt。这是一个跨平台的C GUI框架,它包含您要求的所有内容以及其他内容。 只要您正在使用GPL,开源项目就可以免费使用。 看看Glade和Gtk。两者都很容易使用。 Glade是GUI生成器,而Gtk是工具包。它既是跨平台的,也是跨语言的。您可以使用几乎任何语言加载Glade文件。这是Glade / Gtk教程 最近我在想完全相同的事情。 Qt看起来像是一个很好的跨平台GUI框架,而Python看起来像是一种可以使用的好语言。 所以PyQt是我的(未受过教育的)建议。它确实包含一个拖放式GUI设计工具。 Netbeans是跨平台的,虽然它以Java开发人员为中心,但是您可以轻松安装插件来与C / C,Ruby等一起使用。我将其用于开发Swing GUI程序,因为它具有非常简单的界面,拖放GUI创建。有很多关于使用Java Swing开发的很好的文档,而且我敢肯定也有很多关于使用Netbeans的文档。 Java的Swing API是跨平台的并且相对简单,而NetBeans是很好的GUI构建器。 由于您已经了解Java,因此应该在此处查看Swing API,它提供了一套功能强大的软件包,可用于创建复杂的GUI。而且,它的跨平台,大量的文档,并且可以与Netbeans IDE一起使用。 很多年前,我使用Visual Basic在该领域取得了最快的进步。我认为仍然很容易上手,并且代码/运行/调试周期的效率很高,并且您会很快学到很多有用的东西。大量的文档以及您想要的所有其他优点... 我将研究C#.NET开发及其WinForms API。与Win32 API相比,使用Windows编写GUI桌面应用程序要容易得多。如果仍然有用,您以后可以随时使用Win32 API。 对于跨平台解决方案,请查看Gtk,也许是PyGtk。另一个不错的是WxWidgets。 如果您想变得特别时髦,请查看Ruby专用鞋。 |