请问大家,用C在Windows下编写GUI程序用什么图形库比较好呢?DirectX是什么?算是一种图形库吗?

时间:2021-06-08 17:36:05
请问大家,用C在Windows下编写GUI程序用什么图形库比较好呢?DirectX是什么?算是一种图形库吗?

6 个解决方案

#1


找自己合适的,看lz弄了这么久还在这个阶段,要是我都学完一个API了。
DirectX是本来是微软的游戏开发的API, 不过由于写得“太好了”, 基本API包含在Windows API里面了。
扩展API还是需要DX运行时。Direct3D, Direct2D, DirectWrite等等等等Direct"X"。
像是XAudio2.7是属于DX的,能在XP这种老系统运行,到了XAudio2.8就是Window8自带的API了。

没用过C来使用COM组件,我问过别人用C开发COM程序是不是有点麻烦,毕竟参数啊,函数名,语法糖啊什么的,
那人说不麻烦╮( ̄▽ ̄)╭ 。

做为D2D的拥护者当然推荐Direct2D 请问大家,用C在Windows下编写GUI程序用什么图形库比较好呢?DirectX是什么?算是一种图形库吗?

#2


引用 1 楼 dustpg 的回复:
找自己合适的,看lz弄了这么久还在这个阶段,要是我都学完一个API了。
DirectX是本来是微软的游戏开发的API, 不过由于写得“太好了”, 基本API包含在Windows API里面了。
扩展API还是需要DX运行时。Direct3D, Direct2D, DirectWrite等等等等Direct"X"。
像是XAudio2.7是属于DX的,能在XP这种老系统运行,到了XAudio2.8就是Window8自带的API了。

没用过C来使用COM组件,我问过别人用C开发COM程序是不是有点麻烦,毕竟参数啊,函数名,语法糖啊什么的,
那人说不麻烦╮( ̄▽ ̄)╭ 。

做为D2D的拥护者当然推荐Direct2D 请问大家,用C在Windows下编写GUI程序用什么图形库比较好呢?DirectX是什么?算是一种图形库吗?



谢谢指点,我是想用C写一个代码编辑器,不知道该用什么图形库比较好

#3


推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。

#4


引用 3 楼 u010165006 的回复:
推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。



的确,难怪别人说学了GUI后,才发现控制台是多么的人性化...

#5


引用 4 楼 yyxgs 的回复:
Quote: 引用 3 楼 u010165006 的回复:

推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。



的确,难怪别人说学了GUI后,才发现控制台是多么的人性化...

你是不是理解错了,代码编辑器需要支持语法高亮,单是C语言就有多少关键字,多种语言都要解析。。
比如:Notepad2的功能介绍

1、自定义语法高亮方案,支持HTML, XML, CSS, JavaScript, VBScript, ASP, 
PHP, CSS, Perl/CGI,C/C++, C#, Java, VB, Pascal, 汇编, SQL, Python, NSIS,INI, REG, INF, BAT,DIFF等众多脚本文件。

2、支持ANSI,Unicode,UTF-8等编码互换

3、可以设置无限个书签(9种图标可换)轻松定位

4、空格,制表符彩色显示,并可互相转换

5、可以对任意的文本块进行操作,ALT键+鼠标

6、对括号{}〔〕()可以高亮配对显示,方便查看(仅对英文符号有效)

7、可以自定义代码页和字符集,对中文支持良好

8、使用标准的正则表达式搜索和替换

10、快速放大、缩小页面,不用再设定字体大小

11、可以指定ESC键最小化Notepad2到系统托盘或者关闭Notepad2。

12、支持透明模式

13、支持窗口前端显示(TOP)

#6


引用 5 楼 u010165006 的回复:
Quote: 引用 4 楼 yyxgs 的回复:

Quote: 引用 3 楼 u010165006 的回复:

推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。



的确,难怪别人说学了GUI后,才发现控制台是多么的人性化...

你是不是理解错了,代码编辑器需要支持语法高亮,单是C语言就有多少关键字,多种语言都要解析。。
比如:Notepad2的功能介绍

1、自定义语法高亮方案,支持HTML, XML, CSS, JavaScript, VBScript, ASP, 
PHP, CSS, Perl/CGI,C/C++, C#, Java, VB, Pascal, 汇编, SQL, Python, NSIS,INI, REG, INF, BAT,DIFF等众多脚本文件。

2、支持ANSI,Unicode,UTF-8等编码互换

3、可以设置无限个书签(9种图标可换)轻松定位

4、空格,制表符彩色显示,并可互相转换

5、可以对任意的文本块进行操作,ALT键+鼠标

6、对括号{}〔〕()可以高亮配对显示,方便查看(仅对英文符号有效)

7、可以自定义代码页和字符集,对中文支持良好

8、使用标准的正则表达式搜索和替换

10、快速放大、缩小页面,不用再设定字体大小

11、可以指定ESC键最小化Notepad2到系统托盘或者关闭Notepad2。

12、支持透明模式

13、支持窗口前端显示(TOP)



我不用功能这么丰富,很简单的编辑器就行了。

#1


找自己合适的,看lz弄了这么久还在这个阶段,要是我都学完一个API了。
DirectX是本来是微软的游戏开发的API, 不过由于写得“太好了”, 基本API包含在Windows API里面了。
扩展API还是需要DX运行时。Direct3D, Direct2D, DirectWrite等等等等Direct"X"。
像是XAudio2.7是属于DX的,能在XP这种老系统运行,到了XAudio2.8就是Window8自带的API了。

没用过C来使用COM组件,我问过别人用C开发COM程序是不是有点麻烦,毕竟参数啊,函数名,语法糖啊什么的,
那人说不麻烦╮( ̄▽ ̄)╭ 。

做为D2D的拥护者当然推荐Direct2D 请问大家,用C在Windows下编写GUI程序用什么图形库比较好呢?DirectX是什么?算是一种图形库吗?

#2


引用 1 楼 dustpg 的回复:
找自己合适的,看lz弄了这么久还在这个阶段,要是我都学完一个API了。
DirectX是本来是微软的游戏开发的API, 不过由于写得“太好了”, 基本API包含在Windows API里面了。
扩展API还是需要DX运行时。Direct3D, Direct2D, DirectWrite等等等等Direct"X"。
像是XAudio2.7是属于DX的,能在XP这种老系统运行,到了XAudio2.8就是Window8自带的API了。

没用过C来使用COM组件,我问过别人用C开发COM程序是不是有点麻烦,毕竟参数啊,函数名,语法糖啊什么的,
那人说不麻烦╮( ̄▽ ̄)╭ 。

做为D2D的拥护者当然推荐Direct2D 请问大家,用C在Windows下编写GUI程序用什么图形库比较好呢?DirectX是什么?算是一种图形库吗?



谢谢指点,我是想用C写一个代码编辑器,不知道该用什么图形库比较好

#3


推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。

#4


引用 3 楼 u010165006 的回复:
推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。



的确,难怪别人说学了GUI后,才发现控制台是多么的人性化...

#5


引用 4 楼 yyxgs 的回复:
Quote: 引用 3 楼 u010165006 的回复:

推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。



的确,难怪别人说学了GUI后,才发现控制台是多么的人性化...

你是不是理解错了,代码编辑器需要支持语法高亮,单是C语言就有多少关键字,多种语言都要解析。。
比如:Notepad2的功能介绍

1、自定义语法高亮方案,支持HTML, XML, CSS, JavaScript, VBScript, ASP, 
PHP, CSS, Perl/CGI,C/C++, C#, Java, VB, Pascal, 汇编, SQL, Python, NSIS,INI, REG, INF, BAT,DIFF等众多脚本文件。

2、支持ANSI,Unicode,UTF-8等编码互换

3、可以设置无限个书签(9种图标可换)轻松定位

4、空格,制表符彩色显示,并可互相转换

5、可以对任意的文本块进行操作,ALT键+鼠标

6、对括号{}〔〕()可以高亮配对显示,方便查看(仅对英文符号有效)

7、可以自定义代码页和字符集,对中文支持良好

8、使用标准的正则表达式搜索和替换

10、快速放大、缩小页面,不用再设定字体大小

11、可以指定ESC键最小化Notepad2到系统托盘或者关闭Notepad2。

12、支持透明模式

13、支持窗口前端显示(TOP)

#6


引用 5 楼 u010165006 的回复:
Quote: 引用 4 楼 yyxgs 的回复:

Quote: 引用 3 楼 u010165006 的回复:

推荐C++ Builder
C++ Builder(BCB)从初学到入门
http://blog.163.com/tab_98/blog/static/119240972016157466626/
学C++还是C#、Java?
http://blog.163.com/tab_98/blog/static/11924097201511274543737/
用C++ Builder写个最简单的记事本不超过50行代码,但要写个代码编辑器不是那么容易,看看EditPlus之类的就明白了。



的确,难怪别人说学了GUI后,才发现控制台是多么的人性化...

你是不是理解错了,代码编辑器需要支持语法高亮,单是C语言就有多少关键字,多种语言都要解析。。
比如:Notepad2的功能介绍

1、自定义语法高亮方案,支持HTML, XML, CSS, JavaScript, VBScript, ASP, 
PHP, CSS, Perl/CGI,C/C++, C#, Java, VB, Pascal, 汇编, SQL, Python, NSIS,INI, REG, INF, BAT,DIFF等众多脚本文件。

2、支持ANSI,Unicode,UTF-8等编码互换

3、可以设置无限个书签(9种图标可换)轻松定位

4、空格,制表符彩色显示,并可互相转换

5、可以对任意的文本块进行操作,ALT键+鼠标

6、对括号{}〔〕()可以高亮配对显示,方便查看(仅对英文符号有效)

7、可以自定义代码页和字符集,对中文支持良好

8、使用标准的正则表达式搜索和替换

10、快速放大、缩小页面,不用再设定字体大小

11、可以指定ESC键最小化Notepad2到系统托盘或者关闭Notepad2。

12、支持透明模式

13、支持窗口前端显示(TOP)



我不用功能这么丰富,很简单的编辑器就行了。