/ / Ustaw okno aplikacji jako najwyższe (aktywne) okno - python, excel, win32com

Ustaw okno aplikacji jako najwyższe (aktywne) okno - python, excel, win32com

Jak podnieść aplikację jako szczytwiększość okna. Mam dwa pliki Excela otwarte w programie Excel. Zamykam pierwszy plik, a następnie ponownie go otwieram. Ale chcę, aby drugi plik był jak najbardziej na górze okna. Jak to osiągnąć bez zamykania drugiego pliku i ponownego otwierania go. Muszę to zrobić w wysyłce tylko w win32com.

import time, os.path, os
from win32com.client import Dispatch

path1 = "C:\Todolist.xls"
path2 = "C:\Todolist2.xlsx"

xla = Dispatch("Excel.Application")
xla.DisplayAlerts = False
xla.Visible = True

xl = Dispatch("Excel.Application")
xl.DisplayAlerts = False
xl.Visible = True

wb1= xla.Workbooks.Open(Filename=path1)
wb2= xl.Workbooks.Open(Filename=path2)

wb1.Close()
time.sleep(3)
wb1= xl.Workbooks.Open(Filename=path1)
#Need to bring wb2 back as the top most window

Odpowiedzi:

0 dla odpowiedzi № 1

Spróbuj tego

import win32gui

def windowEnumerationHandler(hwnd, windows):
windows.append((hwnd, win32gui.GetWindowText(hwnd)))

windows = []
win32gui.EnumWindows(windowEnumerationHandler, windows)
for i in windows:
if "window_heading" in i[1].lower():
win32gui.ShowWindow(i[0],5)
win32gui.SetForegroundWindow(i[0])
break