Điểm:0

Nhận thứ tự các ứng dụng trên GUI

lá cờ ru

Có lệnh hiển thị thứ tự hiển thị ứng dụng trên GUI không?

nhập mô tả hình ảnh ở đây

user535733 avatar
lá cờ cn
Bạn đang yêu cầu một phiên bản ALT+TAB khác phải không?
王柏翔 avatar
lá cờ ru
Không, tôi đang hỏi một lệnh hiển thị thứ tự của các ứng dụng trên GUI. Sử dụng hình ảnh làm ví dụ, các cửa sổ lệnh nằm trên GUI, vì vậy thứ tự là 1.
Jacob Vlijm avatar
lá cờ by
Bạn có thể giải thích về trường hợp sử dụng?
vanadium avatar
lá cờ cn
Có thể không thực hiện được nếu trình quản lý cửa sổ của bạn không hiển thị rõ ràng cách truy vấn vấn đề này: xem https://stackoverflow.com/questions/37214093/get-window-list-sorted-by-most-recent-access-bash
Jacob Vlijm avatar
lá cờ by
Nói về, trình quản lý cửa sổ của bạn là gì? Con đường? Lẩm bẩm?
Jacob Vlijm avatar
lá cờ by
Xin chào çæç¿ tò mò nếu a) đây là ý của bạn và b) nếu bạn cần trợ giúp?
Điểm:0
lá cờ by

Nhìn vào ảnh chụp màn hình của bạn, tôi đoán là bạn đang tìm cách đạt được nó trong python.

Lấy thứ tự z của các cửa sổ

Nếu bạn đang ở trên X, bạn có thể sử dụng (bằng bất kỳ ngôn ngữ nào có liên kết với - ) Wnck. Tuy nhiên, Wnck không hoạt động trên Wayland. Đoạn mã dưới đây cho thấy cách nó được thực hiện trong python. Thứ tự của danh sách đầu ra theo thứ tự của cửa sổ z-order.
Lưu ý rằng đầu ra của Wnck.get_windows_stacked() không nên sửa đổi. Tất nhiên, bạn có thể làm việc với dữ liệu, được truy xuất từ ​​dữ liệu đó, nhận thứ tự của các cửa sổ và thuộc tính của chúng. Trong đoạn mã, tôi chỉ sử dụng để lấy xid và tên của cửa sổ, nhưng rất nhiều là có thể.

Ví dụ

#!/usr/bin/env python3
nhập gi
gi.require_version("Wnck", "3.0")
từ gi.repository nhập khẩu Wnck

chắc chắn get_stack():
    z_order_list = []
    scr = Wnck.Screen.get_default()
    # nếu Wnck không được gọi từ rút gọn vòng lặp Gtk, chúng ta cần:
    scr.force_update()
    cho w trong scr.get_windows_stacked():
        # rất có thể, chúng tôi chỉ làm việc với các cửa sổ bình thường (không có bảng điều khiển hoặc máy tính để bàn)
        nếu w.get_window_type() == Wnck.WindowType.NORMAL:
            # chỉ thêm xid và tên ở đây, nhưng mọi thứ đều có thể
            z_order_list.append([w.get_xid(), w.get_name()])
    z_order_list.reverse()
    trả lại z_order_list

wlist = get_stack()
cho w trong wlist:
    in(w[0], w[1])

Đầu ra ví dụ:

92306612 *IDLE Shell 3.8.10*
92274937 zorder.py - /home/jacob/Bureaublad/zorder.py (3.8.10)
96468995 Nhận thứ tự các ứng dụng trên GUI - Hỏi Ubuntu - Mozilla Firefox
98568913 Geen title 1 - LibreOffice Writer
98566678 Dậu Jacob 2021-2022.ods - LibreOffice Calc
94371847 Tilix: jacob@jacob-ZN220IC-K:~

trong đó cửa sổ đầu tiên là cửa sổ gần đây nhất, vì tôi đã đảo ngược danh sách.

Lưu ý rằng Gdk có phương pháp tương tự.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.