2016-10-11 3 views
-1

enthält Ich versuche, Fenstertitel auf jedem Fenster, das Regex mit AHK trifft, festzulegen.AHK Fenstertitel einstellen, wenn es

settitlematchmode regex 

ifwinexist, Title 
{ 
WinSetTitle, New Title 
} 
+0

Und funktioniert es nicht? Kannst du mehr Details und Details zu deiner Frage angeben? – BrianAtkins

Antwort

0

WinGet .. können auch eine Liste aller Fenster passend zu den angegebenen Kriterien (WinTitle, WinText) abgerufen werden.

F1:: 
SetTitleMatchMode, regex 
WinGet, id, list, Title 
Loop, %id% 
{ 
    this_ID := id%A_Index% 
    WinSetTitle, ahk_id %this_ID%,, New Title 
} 
return 

EDIT:

ahk_id wird verwendet, um ein Fenster zu identifizieren, die Fenster einzigartige id (HWND) basiert.

Um dies die (exakt) Titel dieses Fenster verwenden, zu erhalten:

F1:: 
SetTitleMatchMode, regex 
WinGet, id, list, Title 
Loop, %id% 
{ 
    this_ID := id%A_Index% 
    WinGetTitle, exact_title, ahk_id %this_ID% 
     MsgBox, %exact_title%  
    WinSetTitle, ahk_id %this_ID%,, New Title 
} 
return 
+0

Danke! Aber etwas falsches habe ich mit ahk_id% this_ID%. – kosmal

+0

msgbox, ahk_id% this_ID% gibt zurück: "ahk_id 0xd06f6" – kosmal

+0

Was ist'wrong with "ahk_id 0xd06f6"? Um den obigen Code zu testen, ersetzen Sie "Titel" durch "Editor" und öffnen Sie zwei oder mehr Notizblockfenster, um ihren Titel in "Neuer Titel" zu ändern (funktioniert für mich). – user3419297