栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

与GTK和Qt与Windows和OS X的集成方式相比,它们如何与Linux集成?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

与GTK和Qt与Windows和OS X的集成方式相比,它们如何与Linux集成?

在Linux(台式机和笔记本电脑)上,X11服务器通常会显示图形屏幕(至少在2015年初是这种情况)。您的GUI应用程序通过套接字与该服务器通信,通常是在Unix套接字(例如)上本地进行的

/tmp/.X11-unix/X0
。X11服务器通常是Xorg。

对于某些嵌入式设备,例如Android手机或某些小工具(汽车,汽车或医疗设备行业中的GPS),则有所不同(DirectFB,帧缓冲设备 -台式机上的X11服务器使用的…)

一些发行版正在切换到Wayland(或者也许是Mir)。由于我不太了解,因此无法解释细节。在AFAIU中,仍然涉及一些服务器(例如Xorg,它是与图形卡通信的唯一的用户级软件组件)和一些协议,并且主要的工具包(例如Qt和GTK)也已适应它们(因此,如果您为Qt或GTK,您无需关心这些细节,但应该升级工具包。

图形工具箱(Qt,Gtk)通过某些特定协议(例如,用于X11的X Window
System协议
)与X11服务器(或Wayland)进行交互。由于历史原因,这些协议非常复杂,实际上需要遵循某些约定,例如EWMH。

X11今天不像上个世纪那样被使用。特别是X11的
服务器端绘制功能(例如Xlib的XDrawLine或XDrawText)在今天很少使用,因为该工具包正在绘制像素图图像客户端并将其发送到服务器。

注意,您可能不考虑为应用程序提供GUI界面,而是提供Web界面(例如,使用libonion,Wt,....之类的库);然后您的应用程序将变成专用的Web服务器,并且用户将通过浏览器(在其台式机/笔记本电脑/平板电脑/电话中)与您的应用程序进行交互。

实际上,用户界面是如此复杂,以至于您确实应该为其使用一些工具包(如果使用C
++进行编码,则为Qt)。从头开始编码(甚至在Xlib或XCB之上,对于X11)也需要花费大量的时间。

X11之上还存在其他一些小部件工具包,例如FOX工具包,FLTK(但其中大多数功能比Qt或GTK少得多)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/403143.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号