Wechsel zum vorherigen Fenster

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

gerrus
Posts: 2
Joined: 05 Jul 2020, 11:32

Wechsel zum vorherigen Fenster

Post by gerrus » 05 Jul 2020, 14:35

Hallo Volks,
ich versuche mich gerade an meinem ersten Script.
Es soll folgendes machen/passieren: die Maus wird über VLC bewegt und die mittlere Maustaste gedrückt. Es soll dann das VLC-Fenster aktiviert werden und die Taste "m" gedrückt werden (das löst ein Mute aus).
Danach soll das zuletzt aktive Fenster wieder Fokus bekommen und hier habe mein Problem. Ich kriege es nicht hin, weder mit WnActive noch mit Send AltTab.
Wer kann helfen? Vielen Dank
Das ist was ich bis jetzt habe:

Code: Select all

#If MausIstÜber("ahk_exe vlc.exe")
{
 MButton:: Send m
 ;Hier kommt die Umschaltung zum vorherigen Fenster
}
return
MausIstÜber(Fenstertitel) {
	MouseGetPos,,, Fenster
	if WinExist(Fenstertitel . " ahk_id " . Fenster)
	{
	WinActivate, ahk_id %Fenster%
	return true
	}
    return false
}

User avatar
Scr1pter
Posts: 1272
Joined: 06 Aug 2017, 08:21
Location: Germany

Re: Wechsel zum vorherigen Fenster

Post by Scr1pter » 06 Jul 2020, 01:37

Hallo,

vielleicht hattest du es falsch geschrieben.
Versuch mal Send !+{Tab}

Frage:
Muss es unbedingt diese MausIstÜber-Funktion sein?
Falls nein, könntest du auch mit ControlSend arbeiten.
https://ahkde.github.io/docs/commands/ControlSend.htm

Dann bräuchtest du weder auf das VLC-Fenster zu gehen noch das vorherige aktivieren.

Grüße
Please use [code][/code] when posting code!
Keyboard: Logitech G PRO - Mouse: Logitech G502 LS - OS: Windows 10 Pro 64 Bit - AHK version: 1.1.33.09

gerrus
Posts: 2
Joined: 05 Jul 2020, 11:32

Re: Wechsel zum vorherigen Fenster

Post by gerrus » 06 Jul 2020, 10:01

@Scr1pter
Besten Dank! Hab das ganze jetzt so gemacht und es funktioniert so wie von Anfang an gedacht/gewollt.

Code: Select all

MButton:: 
MouseGetPos, , , Fenster
if WinExist("ahk_exe vlc.exe" . " ahk_id " . Fenster)
	{
	ControlSend, ,m,ahk_id %Fenster%
	}

Edit:
Okey zu früh gefreut :))
So wie oben funktionieren leider die Clicks in anderen Anwendungen nicht.
So sollte nun alles wie gewollt funktionieren.

Code: Select all

#If MausIstÜber("ahk_exe vlc.exe")
MButton:: 
MouseGetPos, , , Fenster
ControlSend, ,m,ahk_id %Fenster%

MausIstÜber(Fenstertitel) {
	MouseGetPos,,, Fenster
	return WinExist(Fenstertitel . " ahk_id " . Fenster)
	}

Post Reply

Return to “Ich brauche Hilfe”