Anderes Keys in Widgets benutzten

  • Bei "Overrite Pressed Key down" geht es nur wenn ich vorher den Button anklicke...

    Hab dies mittlerweile hin bekommen. Fand es fragwürdig dass es nur ging wenn ich den Button vorher anklickte. Der Button ist ein Child Widget.
    Der Fokus war das Problem. Ich setze nun den Focus bei "howered" und setzte beim "unhowered" es wieder auf den Mainwidget.

    Allerdings fragte ich mich, was ist wenn ich mehr Buttons brauche.

    Sagen wir mal ich bin in einem Widget. Dort sollen halt verschiedene Sachen für verschiedene Tasten passieren.

    Kann ja nicht sein dass es im Widget keine Inputs etc gibt und bei default nur die linke Maustaste erkannt wird.
    Und so Umwege über den Player oder sonst was kanns ja auch nicht sein oder???
    Da gibt es doch bestimmt von Epic eine gewollte saubere Lösung wie man sowas einstellen kann.

  • Ich kann mich nicht erinnern, wo man etwas im UI nicht mit der linken Maustaste anklicken konnte oder musste. Von daher scheint das, was du vorhast schon ein Sonderfall zu sein. Also meistens hast du ja irgendwelche Bausimulatoren oder ähnliches wo du mehr mit dem UI interagierst. Und bei allen, zumindest bei denen die ich gespielt habe, hast du immer ausgewählt was du bauen wolltest, Linksklick, und dann wurde es halt platziert und gebaut. Das ging von C&C bis Sim City und allen anderen Spielen in dieser Art so.


    Wo hast du denn die Idee her, erst zu hovern und dann mit einer Taste den Klick zu ersetzen? Bzw. was genau hast du vor?


    Du darfst ja auch nicht vergessen, dass die Widgets jetzt nicht den ganzen Funktionsumfang einer Windowsform oder WPF/MVVM haben.


    Und so unsauber sind die Lösungen ja auch nicht, wenn du jetzt mal die genauere Beschreibung von Butterfly nimmst, bei On Hover halt eine boolsche Variable zu setzen und dazu dann eine zusätzliche Taste abzufragen mit AND in ein Branch rein, das ist jetzt nicht so wirklich unsauber. So würdest du das in C#, C++ oder was auch immer auch machen.

  • Ich kann mich nicht erinnern, wo man etwas im UI nicht mit der linken Maustaste anklicken konnte oder musste. Von daher scheint das, was du vorhast schon ein Sonderfall zu sein.

    Ich sagte auch dass als Default nur die linke Maustaste erkannt wird.


    Wo hast du denn die Idee her, erst zu hovern und dann mit einer Taste den Klick zu ersetzen? Bzw. was genau hast du vor?

    Ich möchte nicht den Klick ersetzen sondern durch eine Taste nur eine weitere Funktion einbinden.
    Als Beispiel: Ich habe einen Slot im Inventar mit einem Item drin. Wenn ich es anklicke kann ich es benutzen. Schön und gut.
    Ich möchte aber eine andere Taste dazu benutzen um das Item zB zu verschieben.

  • Du könntest doch eine boolVariabel einsetzen, dass falls ein zweiter Button gepresst wird, durch true dann einen anderen Verlauf ausführen lassen. Sprich, key down, if butto2 is pressed = verschieben des Items, if not pressed = use item

    funktioniert so nicht, da man dann immer 2 keys drücken muss.
    Ich habe nun bisschen rumprobiert und Videos geschaut.
    Mein Hauptproblem was ich habe ist der Focus. Ich bekomme wenn ich ein Widget öffne den Focus nicht auf die Childs die im Menu drin sind. Mit Set Keyboard Focus auf die Childs oder bestimmte Buttons hat alles nichts gebracht. Muss ich mal weiter schauen woran das liegt.