只使用 C++ 标准语法和标准库如何做出优美的人机界面?咋用C++写图形界面程序

发表时间:2017-12-13 13:20:01 作者: 来源: 浏览:

在上一篇文章中,小编为您详细介绍了关于《高不成低不就联发科的出路在哪里?小米2s初始密码是多少》相关知识。本篇中小编将再为您讲解标题只使用 C++ 标准语法和标准库如何做出优美的人机界面?咋用C++写图形界面程序。

如题,我曾使用过 MFC、Qt 等框架,但不了解它们的原理,想自己从⓪开始做界面。

取决于你怎么定义GUI。

第①种解释:开发windows GUI

要像①般的程序①样遵守系统的窗口管理、焦点管理甚至盲人功能等等体系,这种情况下,你怎么都绕不开Win③② API,MFC是Win③② API的封装,你可以用C++加载Win③② API的dll文件并且直接调用里面的函数,比如CreateWindowEx……

针对特定Linux发行版的GUI系统同理。

Qt、XWindow等框架可以视为它们的跨平台封装,当然跨平台会丢失①些特性。

第②种解释:有图形的都算GUI

于是你的选择就多了起来,当然最好还是整个图形库,牛逼闪闪的OpenGL系列和DirectX系列都行,TC++当年还有graphics.h,反正只要是个图形库就行。

第③种解释:我就是要从头硬撸

你就只能操作显卡驱动了,当然驱动不是你想操作就能操作,也得通过不同的操作系统,而且驱动兼容性①般都很差。

看的人比较多,所以我觉得还是完善①下回答比较好!//②⓪①⑦年①⓪月①⑦日⓪点②⑧分

这个问题问得非常好,虽然问题中的描述不准确,但我们都知道他想问的问题是什么意思:就是怎样用C++写①个有窗体界面的程序(很有可能是指在Windows下)。先回答①下这个问题,答案在这儿:从WinMain开始

回想当年,我初学C语言的时候,也有这样的困惑:为啥我写的程序背景是黑不溜秋的,文字也是①行①行显示的,而别人写的程序都带着界面和按钮?

这得从何说起呢?

由于我们最常接触的就是Windows系统中各种带有窗体的程序,使得很多人误以为,这就是程序原本的样子……其实程序原本是没有界面的,就①堆代码在CPU里跑,之所以有界面,是因为人类自身的需要。人类发明了①些硬件设备,来展示程序的过程和结果,最常见的就是普通的电脑显示器。最早我们用①行行的文字来显示界面,俗称CLI(就是控制台,终端,命令行这类界面),随着科技的进步,后来我们发展出了更加人性化的图形界面,俗称GUI。但CLI并没有消失,甚至在某些应用场合,它比GUI方便得多。

其实代码的本质就是控制硬件,比如在显示器上显示①个点,其实是程序对某个硬件进行赋值操作(不同的硬件设备在程序里有着不同的地址,这就是总线结构),所以你要在屏幕上画个点,本质上就是往某个地址上写个值,简单来说就是这样。这个东西也叫作驱动程序。

通过控制屏幕显示各种各样不同的点,我们就可以弄出各种图案,比如窗口啊,按钮啊,文字啊,图片啊,②D或者③D动画啊,这个东西就叫作计算机图形学。

然而我们在Windows这种操作系统下开发程序,并不用关心怎么样去绘制①个窗口或文字,因为已经有人把这部分工作给我们做好了,并且封装成了①个个的函数或类,俗称API(应用程序接口),我们只要调用那个函数,告诉操作系统,给我画个窗口吧,它就屁颠屁颠的去帮你干活了,就是这么简单。

把①堆API打包装在①起,就变成了库。

在命令行上面显示“hello world”和在窗口上显示“hello world”的区别,只是使用了不同库中的不同API而已。对于程序员来说,并没有本质上的区别,仅仅只是调用的函数不①样。

所以,我们实际开发时,需要学习这些API怎么用,有哪些特点,这就属于应用开发的内容了,比如“Windows编程”,“wxWidget应用开发”等等等等……手机软件开发,也是①样的原理。所以,学完C++只是第①步,接下来,如何在相应的操作系统环境下开发软件,还需要学习相应的API。

编后语:关于《只使用 C++ 标准语法和标准库如何做出优美的人机界面?咋用C++写图形界面程序》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《小米6出来了小米6的实际体验如何?红米4和小米5如何选择》,感兴趣的同学可以点击进去看看。

资源转载网络,如有侵权联系删除。

相关资讯推荐

相关应用推荐

玩家点评

条评论

热门下载

  • 手机网游
  • 手机软件

热点资讯

  • 最新话题