Game Maker im Hintergrund laufen lassen, um Tastenkombinationen zu erstellen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Game Maker im Hintergrund laufen lassen, um Tastenkombinationen zu erstellen

    Hallo,

    Ich hatte vor, ein Programm zu machen, welches im Hintergrund läuft und auf Tastenkombinationen bestimmte Befehle ausführt, ähnlich wie bei einem Makro von zum Beispiel einer Tastatur.
    Sprich, ich könnte eine beliebige Tastenkombination drücken und Game Maker würde meinen gewünschten Befehl ausführen, beispielsweise mich im Browser nach Youtube navigieren.

    Ich hatte mir grundlegend vorgestellt, dass ich das Programm unsichtbar mache und es sozusagen wie einen Prozess im Hintergrund laufen lasse.
    Um auf die Tastenbefehle zu reagieren, müsste das Programm jedoch ja fokussiert sein, oder gibt es eine Möglichkeit Game Maker zu sagen, dass auch auf Tastaturbefehle reagiert werden soll wenn
    das Programm nicht fokussiert ist?
    Und wenn das Programm fokussiert ist, kann Game Maker doch auch keine Tastaturbefehle zum Beispiel im Browser simulieren, da dieser dann wieder nicht fokussiert ist.
    Oder gibt es da einen Workaround?

    Außerdem gibt es ja die Funktion window_set_visible() nicht mehr, wodurch es schon mal nicht mehr möglich ist, das Programm trotz Fokussierung zu verbergen.
    Wobei selbst wenn das klappen würde, bin ich mir immer noch nicht sicher ob das dann klappen würde. Hat hier jemand vielleicht eine alternative Idee?

    Edit: LOL der vorletzte Satz :deal: :D

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von cedisupersoccer ()

  • Ich bin mir gerade nicht sicher, wie das mit dem Fokus ist,
    aber durch einen Trick, kann man das Fenster unsichtbar machen, indem du im GameEnd Event eine Dauerschleife packst.
    In der Dauerschleife hast du dann keyboard_check Abfragen, die dann auf Tastenkombinationen reagieren.
    Das Fenster machst du dann durch Beenden auf das X unsichtbar. (Sichtbar kann es danach nur durch Neustart gemacht werden)

    Code für GameEndEvent:

    GML-Quellcode

    1. while(true){
    2. if(keyboard_check(vk_control))
    3. //steuerungstaste wurde gedrückt
    4. }
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe
  • Husi012 schrieb:

    Ich bin mir gerade nicht sicher, wie das mit dem Fokus ist,
    aber durch einen Trick, kann man das Fenster unsichtbar machen, indem du im GameEnd Event eine Dauerschleife packst.
    In der Dauerschleife hast du dann keyboard_check Abfragen, die dann auf Tastenkombinationen reagieren.
    Das Fenster machst du dann durch Beenden auf das X unsichtbar. (Sichtbar kann es danach nur durch Neustart gemacht werden)

    Code für GameEndEvent:

    GML-Quellcode

    1. while(true){
    2. if(keyboard_check(vk_control))
    3. //steuerungstaste wurde gedrückt
    4. }

    Schade dass das nicht ohne Dauerschleife zu gehen scheint. Der eine Code würde dann zwar nicht wirklich RAM schlucken, aber
    wenn ich da so einen komplexen Programmcode reinpacke wird das mein Arbeitsspeicher wohl nicht mitmachen.
    Dann werde ich mich wohl mit einem sichtbaren Fenster zufrieden geben müssen :)
  • Ist gar nicht so schwer, ich habe unten in meiner Signatur ein Link zu zwei Tutorials, die das ganze etwas besser erklären können.
    Wenn du willst, kann ich es dir auch gerne erklären ;)
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe
  • Gamemaker 8.0 und 8.1 bieten eine Funktion namens window_set_visible(false), die macht das Spielfenster unsichtbar und man kommt an Tastendrücke per keyboard_check_direct(key)
    Kopiere dies in deine Signatur, um es in deiner Signatur zu haben.
    Achtung: Dieser Beitrag läuft ende des Monats ab, bitte lese ihn noch vor dem Monatswechsel...
    Nach langer zeit wieder im Forum aktiv :D