DearPyGui: Main window 总是在最前面

DearPyGui: Main window always on top

对于 dearpygui,我希望主 window(包含所有其他 windows 的那个)始终位于顶部,即使它没有焦点。 这是我目前所拥有的:

from dearpygui.core import *
from dearpygui.simple import *


with window('MainWindow', width=500, height=500):
    add_button('Read screen')

我暂时采用了这个解决方案。如果得到图书馆的支持,我会编辑我的答案。这是他们目前路线图中的一个功能 (see this issue)。

from multiprocessing import Process
from time import sleep

import win32con
import win32gui
from dearpygui.core import *
from dearpygui.simple import *


with window('MainWindow', width=500, height=500):
    add_button('Read screen')


if __name__ == '__main__':
    # you have to make a new process for this in order to be able
    # to call win32gui.FindWindow on your displayed window
    p = Process(target=start_dearpygui) 
    p.start()

    # sleep for a while to let your window get displayed
    sleep(4)

    hwnd = win32gui.FindWindow('DearPyGui', None)
    win32gui.SetWindowPos(hwnd, win32con.HWND_TOPMOST, 100, 100, 300, 200, 0)