Создание инструментов управления окнами в Linux: примеры Xlib, GTK и Qt

“Инструменты сборки окон Linux” представляют собой смесь ключевых слов, относящихся к разным темам. Однако я буду интерпретировать это как запрос методов и примеров кода для создания инструментов в системах Linux, связанных с управлением окнами или графическими интерфейсами. Вот несколько методов, которые вы можете использовать, а также примеры кода:

Метод 1: использование Xlib
Xlib — это низкоуровневая библиотека для взаимодействия с системой X Window в Linux.

from Xlib import X, display
def create_window():
    d = display.Display()
    screen = d.screen()
    root = screen.root
    window = root.create_window(
        10, 10, 400, 300,  # x, y, width, height
        1,  # border width
        screen.root_depth,
        background_pixel=screen.white_pixel,
        event_mask=X.ExposureMask | X.ButtonPressMask
    )
    window.map()
    d.sync()
create_window()

Метод 2. Использование GTK
GTK – популярный набор инструментов для создания графических пользовательских интерфейсов и управления окнами.

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
class MyWindow(Gtk.Window):
    def __init__(self):
        Gtk.Window.__init__(self, title="Window Build Tools Linux")
        self.set_default_size(400, 300)
        self.connect("destroy", Gtk.main_quit)
window = MyWindow()
window.show_all()
Gtk.main()

Метод 3. Использование Qt
Qt — еще один широко используемый набор инструментов для создания графических интерфейсов и управления окнами.

import sys
from PyQt5.QtWidgets import QApplication, QWidget
class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("Window Build Tools Linux")
        self.setGeometry(100, 100, 400, 300)
app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())