我的問題是關于天氣,是否可以在 GTK3 應用程式中嵌入視窗的內容(例如終端模擬器、瀏覽器、游戲或任何其他 X 組織應用程式)。這意味著用戶仍然可以與應用程式互動并查看其內容。我正在運行 Debian 11 64 位,我想使用 C 制作應用程式。
uj5u.com熱心網友回復:
我見過的最接近的是使用 aGtkPlug和 aGtkSocket:
與 GtkSocket 一起,GtkPlug 提供了以對用戶透明的方式將小部件從一個行程嵌入到另一個行程的能力。一個行程創建一個 GtkSocket 小部件并將該小部件視窗的 ID 傳遞給另一個行程,然后另一個行程使用該視窗 ID 創建一個 GtkPlug。包含在 GtkPlug 中的任何小部件都將出現在第一個應用程式的視窗中。
GtkSocket 和 GtkPlug 之間的通信遵循XEmbed 協議。該協議也已在其他工具包中實作,例如 Qt,在 GTK 中嵌入 Qt 小部件時允許相同級別的集成,反之亦然。
這方面的一個例子是xfce-settings-manager,你可以在這里學習(在 repo 中搜索“socket-id”)。
注意:GtkPlugs/ GtkSockets 是 X11 特定的。如果您正在尋找跨平臺的東西,這可能不是它。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/398343.html
