windows下GUI开发新手问题

发布于 2022-09-01 11:57:29 字数 209 浏览 14 评论 0

我知道创建GUI程序可以用C,C++,C#这些编程语言,还知道C对应最底层的API,C++对应MFC,还有一些图形库比如QT,GTK+.

下面是一些百度很难搜到的实际问题


  1. 上述哪些编程语言/库能拖控件?
  2. 拖控件与直接写代码相比有什么缺点?
  3. QT和GTK+这些库能否实现windows原生的GUI?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

请叫√我孤独 2022-09-08 11:57:29

QT可以在Windows下使用,完全没有问题,默认就是原生GUI,而且比MFC和Win32 API简单方便很多
关于这个问题:
1.首先不推荐用MFC,太旧了
2.如果你有C++基础,以前用过QT,等等,可以使用QT
3.否则推荐用C#等语言,开发效率会高很多

关于拖控件:
1.QT MFC WinForm C#什么的都可以拖控件
2.拖控件比纯手写效率高,大多数情况下纯手写并没有太大优势
3.现在的思路不只是拖控件,还要考虑布局问题,来使控件自适应窗口
4.对于复杂和特殊的情况,可能还是需要纯手写

攒一口袋星星 2022-09-08 11:57:29

Windows下GUI开发,游戏,绘图软件等等对性能要求较高的,用C/C++写比较好,运行效率高。
可以考虑使用各种2D、3D的引擎,Windows API开发并不适合(微软也不推荐直接用API了)。

其它性能要求不高的,一律推荐C#/VB.NET,毕竟是微软主推的语言,开发环境VS,拖控件So Easy,开发效率高。
同样可以使用官方、第三方的各种引擎和Windows API(微软不推荐,但是必要的时候还不是得用API)。

QT和GTK+是Linux/Unix系统下的C/C++开发才会用到的吧,不适合Windows,不必太纠结。
微软有自己的全套GUI开发解决方案(从语言到.NET框架到开发环境各种),并不需要这种东西。

关于第二个问题,在Visual Studio下:拖控件,后台就会自动更新代码,而更改了代码,界面部分也会更新,并没有什么区别。缺点?你有听说写网页是靠在Dreamweaver里,拖一拖生成的吗?代码当然控制的更精确啊。

好的GUI开发并不会只是拖控件,对于界面要求高的软件,甚至可能要另外写控件。
要求超级高的,寒霜引擎,虚幻引擎(额,我说的是游戏)……

婴鹅 2022-09-08 11:57:29
  1. 拖控件是开发工具提供的功能,和编程语言/库没什么关系,换言之,所有的编程语言/库都可以用拖控件来做。在下所知的IDE中:

    • virtual studio 凡微软推广的库都支持,或者将会支持。
    • eclipse 因为支持插件的缘故,大多数情况下只有你想不到没有他做不到,至于体验好不好那是另一回事。
    • qtcreator C++&QT
  2. 没什么缺点,所见即所得能让设计界面时直观一些,但依然需要写代码来完成具体逻辑。所以其只能算是锦上添花,并没有本质上的改变。另外,有些拖控件的工具生成的代码不太符合用户的编码习惯,这种“无法照顾到所有人习惯”的情况姑且算一个缺点吧。

  3. 不知道。在下直觉上认为是的,但不是实现原生,而是基于原生实现。
    容在下抬个杠,很多基于操作系统原生窗体的GUI库都花了很多功夫去解决在不同系统下显示不一致的问题,你为毛会反其道而行去追求原生?反正对用户来说只要看起来好看用起来好用就是了,程序员爱折腾折腾吧。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文