如何用c语言作出有图形界面的小程序?

如何用c语言作出有图形界面的小程序?,第1张

那需要学VC。确切的说是要学MFC。

MFC编图形化程序也是很麻烦的,难学,繁琐。

其实你可以再学Java或者C#。

Java本身也不适合做图形化应用程序,但是比MFC要简单得多。

C#则是当前做图形化程序最简单高效的了,不需要编程单靠鼠标拖拽就能做出图形界面。特别是C#的WPF图形框架更是把图形化编程简化到了极限。

所以强烈建议学C#。

C#语言综合Java和C++的优点。Java和C++都源自C语言。所以学C#之前最好先学一下C++,C、C++、C#可以说是一脉相承,向下兼容的。

总之,学图形化编程比较好的顺序是:

C(结构化语言,入门)->C++(面向对象语言,铺垫) ->C# (享受快速图形化开发吧)

忘解释那几个名词了,补上:

集成开发环境:就是IDE,一类开发工具。

你的代码本来可以直接在记事本里写完,然后命令行下调用编译器编译就能执行了。

集成开发环境将代码编辑、代码编译执行、代码调试功能集成在一起(甚至集成更多功能),使开发人员的开发变得更加高效。比如Visual C++ 6.0就是一个集成开发环境,还有Eclipse、CodeBlocks、Visual Studio等都是。

这要看你所使用的系统平台,图形化编程与系统平台息息相关

对于C语言来说,有许多成熟的框架。比如Windows上可使用Windows的系统API,Linux下有GTK,嵌入式环境下有miniGUI等。

C语言是一门比较特殊的语言,虽然也是高级编程语言的一种,但是为了和其他语言区分开来,部分人也会将C语言称作中级语言,主要是因为C语言不是面向对象的语言,并且有指针这样的利器可以直接对底层以及硬件进行 *** 作。

正是因为C语言不是面向对象的语言,在图形化这样更偏上层的应用中,一般会使用C++替代C语言,这样能极大的降低开发的工作量。

比如,Windows下可使用MFC,WPF也支持C++。Linux下一般用跨平台的QT(可在Windows/MAC等多种平台运行)。嵌入式环境下有嵌入式的QT版本。

在codeblocks中,可以通过集成EGE库,来实现C语言图形程序的编写,具体方式如下:

一、安装:

1、下载ege安装包;

2、将安装包解压;

3、把压缩包里include目录下所有文件,复制到编译器安装目录下的include目录内,例如D:\MinGW\include\;

4、把lib目录下对应编译器名目录下的文件,复制到编译器安装目录下的lib目录内,例如D:\MinGW\lib\。

二、建立工程:

只要第1步做好以后,其实已经安装好ege了,剩下的只是配置build option.

点击file-new-projects,选择Console application:

注意编程语言要选C++(不必担心写代码仍可以是C语言,只是库要求源代码文件要是CPP)

三、配置build option:

建立好工程以后,需要设置好链接选项.

1、点击project-build option:

2、切换到linker setting选项卡,添加-lgraphics -lgdi32 -limm32 -lmsimg32 -lole32 -loleaut32 -lwinmm -luuid -mwindows,这些链接选项。

3、点击Add,找到第一步编译器路径下的lib文件夹,添加libgraphics.a,libgdi32.a libimm32.a libmsimg32.a libole32.a liboleaut32.a libwinmm.a libuuid.a这8个文件(可以一次性全部添加,不必一次添加一个),

并在右边的other linker options写上 -mwindows。

添加完以后应该是(前面的路径取决于编译器安装目录):

四、 测试代码:

到此已经设置完毕。

将工程里的main.cpp文件的代码换成:

#include "graphics.h" 

int main(){ 

initgraph(640, 480) // 初始化为640*480大小的窗口,这里和TC 略有区别 

circle(200, 200, 100) // 画圆,圆心(200, 200),半径100 

getch() // 等待用户按键,按任意键继续 

closegraph() // 关闭图形界面 

return 0

}

构建,并运行,运行结果如下:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11350297.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存