皆さん、ありがとうございます。

>>960
>>961さんのご指摘通り、"ahk_group"の部分が文字列、 GroupAやGroupBが変数で中身にアプリ名を表す文字列を入れています。

>>961
ドット連結の書き方も試してみましたが、結果は同じでした。WinActive部分がWinExistのような挙動をしていて、必ず一番上の条件で真になってその中身が実行されるような挙動です。

>>962
#HotIf WinActive("ahk_group" GroupX)の後の{}を外してみましたが、結果は同じでした。同じくWinActive部分がWinExistのような挙動をします。エディタの自動インデント対策のためデバッグ途中で付けてしまいましたが、確かに本来の書き方では{}は不要かもしれません。
MyFuncは、上の方でClassを定義していて、そこの関数を呼び出しています。複雑な処理のためここには書ききれませんが、GroupAもGroupBもMyFunc()の呼び出し自体には問題なく成功します。