我正在编写一个相当大且复杂的数据分析程序,并且我认为是时候为该程序构建一个 GUI。所以我的问题是:
我应该使用哪个 GUI 工具包?
我对编码和构建 GUI 完全陌生,希望能提供任何指导。它不一定是世界上最简单的工具包,我学得很快。但是,它确实需要能够执行以下操作(如果不是全部,对于任何给定的工具包来说,其中一些可能是非常基本的,但我认为最好将所有这些都扔掉以防万一)。
它必须允许我直接在屏幕上绘制,以便我可以放置图表(实际上是光谱)、绘图和类似的东西供用户查看。我需要能够收集他们点击上述光谱的位置信息。我需要能够显示文本并从用户那里获取文本输入。它需要能够生成菜单(您知道文件、编辑等)。如果它有一些用于生成表格的内置小部件会很方便(尽管如果我可以直接在屏幕上绘制,我可以克服它的不足)。它需要能够弹出警告、对话框、保存和打开框等。差不多就是这样,当我把它们写出来时,它们中的大部分看起来都很基本,但我不想让 GUI 部分编码和然后意识到我需要用不同的工具包重写它。
应该注意的是,我已经用 C++ 编写了这个程序,并且我不想用 C 或其他东西编写 GUI 部分,因此工具包需要支持 C++。
此外,跨平台工具包比单一平台工具包更可取。但是,如果它必须是一个单一平台工具包,那么我更喜欢它用于 Linux。
最后,我会非常喜欢开源工具包而不是闭源工具包。
除此之外,我想不出有什么要补充的。提前感谢您的时间和回答。
嗯,基于答案,我将同时查看 Qt 和 wxWidgets,看看哪个更吸引我。我可以接受多个答案,但我不能,因为我正在研究两件事,所以只接受一个答案是不公平的,也许在一两个星期后,我查看了工具包并想通了我想用的。