c语言gui开发
1. 如何通过c语言从底层开发GUI库
主要把几个关键问题弄清楚,每个框架都有不同的方案解决这几个问题。
1. 怎么描述界面。
一般都是类似xml的树结构来描述
2. 怎么render, refresh
拿到object tree/render tree之后, 如何把这个东西画出来到framebuffer上, cpu?gpu?以什么格式?node的状态改变之后, 怎么刷新,什么时候刷新。
3. 如何管理这个tree。
clip, transparent等等属性怎么处理, layout怎么管理,parent关掉了怎么处理子节点? ...
4. 用户点击这里该怎么办?(user event handling)
无非这几种办法
function pointer(Callback) 或者 signal/slot 或者observer interface+ registration。
5. event handle (system event handling)
这是比4更广义的问题,
a. input device trigged, 发IRQ, kernel处理, 丢给framework的handler.
b. 打包放入 event queue.
c. loop engine dispatches event: (key events sent to widget has the focus, mouse event to widget under cursor).
d. if target dont have handler for this event, bubble up to the root node until someone accpet it.
5. MVC 的具体细节和jargon
6. 多线程, IPC, shared memory问题
2. C语言写的程序 GUI
可以去看看windows api
另外NetBeans写C方便么。。。我只用这个写JAVA。。。
3. 如何用C语言做GUI开发
1.可以用
winC
,就是直接在windows下编程。这个比较麻烦,因为所有的东西都必须自己写(如创建窗口,初始化等一些基本的)以前老师上课的时候讲过,理解了之后,感觉其实很简单,而且都是一个套路,看个例子就能明白的
2.可以用MFC创建界面,里面要具体实现的东西,直接用C语言写就可以了,很方便,其实MFC就是对winC的一种封装,就是第一点说的你要写的那些基本的东西(创建窗口,初始化之类的),他都给你弄好了,不用自己写,直接创建一个工程就OK了
3.可以创建C#工程,用C#创建界面(直接拖控件就行,像VB那样),然后,你要实现的东西用C语言写。或者,你先将要实现的东西,用C语言写好,编译成动态链接库DLL,然后在C#工程中调用该DLL。C#工程实际上就起到一个界面封装的目的,也比较方便
4. 用C语言实现GUI(用TC 3.0 编译器)
TC是不行的,他无法调用API,所以无法实现GUI界面你可以用一些好点的比如 Visual C++ 之类的!
5. c语言怎么设计GUI界面
用VC吧,用纯C的话其实也是调用windows的API来实现GUI界面,工作量会很大且容易出错。
6. C语言如何开发桌面GUI应用程序
这里介绍一种非常简单的方法,使用GTK,一个基于C语言开发的跨平台图形工具包,可以直接
使用C语言
快速完成桌面GUI程序的开发,下面我简单介绍一下实现过程,主要内容如下:
使用C语言
1.首先,下载安装GTK,这里有2种方法,一种是按照GTK官网的方法一步一步配置,还有一种是直接使用打包好的GTK-bundle包,这里以第二种方法为例,直接使用打包好的GTK-bundle包,这个可以直接在CSDN上找到下载,如下,解压这个zip文件到任意一个文件夹,之后需要将bin目录添加到环境变量中:
这里你也可以配置Dev-C++,VS2017都可以,网上也有相关资料和教程。至此,我们就完成了利用C语言来开发桌面GUI程序,总的来说,整个过程不难,就是有些繁琐,C语言运行效率高,但毕竟封装性差,做GUI开发还是有些复杂,如果你想快速开发一个GUI应用,可以考虑使用一下其他语言,如C++,C#,Electron等,更简单也更快捷,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言。
7. C语言 GUI
。。。 问的什么乱七八糟的
menu是一个菜单项,messager handler是个句柄
MessageBox::Show("Melng", "Titel"); 弹出一个消息框,melng应该是消息框使用的图片或内容,title是消息框标题
其他的你好好看api吧
8. 如何学习C语言的GUI
主要把几个关键问题弄清楚,每个框架都有不同的方案解决这几个问题。
1. 怎么描述界面。
一般都是类似xml的树结构来描述
2. 怎么render, refresh
拿到object tree/render tree之后, 如何把这个东西画出来到framebuffer上, cpu?gpu?以什么格式?node的状态改变之后, 怎么刷新,什么时候刷新。
3. 如何管理这个tree。
clip, transparent等等属性怎么处理, layout怎么管理,parent关掉了怎么处理子节点? ...
4. 用户点击这里该怎么办?(user event handling)
无非这几种办法
function pointer(Callback) 或者 signal/slot 或者observer interface+ registration。
5. event handle (system event handling)
这是比4更广义的问题,
a. input device trigged, 发IRQ, kernel处理, 丢给framework的handler.
b. 打包放入 event queue.
c. loop engine dispatches event: (key events sent to widget has the focus, mouse event to widget under cursor).
d. if target dont have handler for this event, bubble up to the root node until someone accpet it.
5. MVC 的具体细节和jargon
6. 多线程, IPC, shared memory问题
9. C语言怎么做GUI开发用什么工具
可以用win32API做,开发工具推荐用vc6。关键是一个头文件windows.h,看这本书就可以做出基本的界面来:Programming Windows程式开发设计指南。要的话我发你