为什么wxWidgets需要其他GUI库,例如GTK或Motif?

时间:2019-06-09 17:27:28

标签: wxwidgets

在Linux或FreeBSD上构建wxWidgets库时,我注意到wxWidgets需要其他GUI库,例如GTK +,Motif等。而GTK +,Motif或FLTK库似乎是独立的,因为它们不需要任何其他GUI库。

尽管这些库需要xlib,但我们不必对xlib做任何事情。

我不明白。

1 个答案:

答案 0 :(得分:5)

wxWidgets尽最大努力保持操作系统的外观和风格(阅读:外观和行为)。例如,在Windows上,wxWidgets使用Windows提供的控件。与Apple OSX相同。这是“本地”一词的含义。

在Linux上,有几个“桌面”(提供控件):GTK +,KDE等。wxWidgets仅使用GTK +(不再使用旧的Motif),因此GTK +提供了“本机”控件。 请注意,台式机使用底层Xlib或Wayland。

如果某个控件在平台中不可用(例如“数据视图”),则wxWidgets使用其自己的通用控件。该通用控件通常由本机控件的组合组成,因此外观得以保持。

与之相反的是Qt,它仅使用操作系统的“深度和基本”功能,例如绘图。这样,控件的外观在所有平台上都是相同的。