Menü Probleme

  • Ein Freund arbeitet an einem kleinen "Menü" für sein Spiel.
    Jetzt hat er das Problem das er 4 Menü Punte hat (Bilder) die sich frei durch das Fenster
    bewegen und er mit Tasten zwischen diesen wechseln will.

    [Blockierte Grafik: http://j19.img-up.net/CoRAmriq0iE.png]

    Das Problem ist nicht die Position der Bilder raus zu bekommen,
    sondern die Funktion mit der man zwischen ihnen wechseln kann.

    Jemand eine Idee wie sich das umsetzen lassen könnte?

    (Die weißen Linien die man nur schwer sieht, sind später "Leinen"
    die dafür da sind die Menüpunkte zu verbinden. Nicht wundern xD)

    Einmal editiert, zuletzt von Sen (19. August 2009 um 19:26)

  • Normalerweise Wechselt man bei windows mit Tab ( der Tabolator taste) zwischen den Controls, scheint hier wohl net zu gehen,
    aber ich hab da ein problem, ich versteh net genau was du/er machen will, ich seh ja kein menu... :huh:

    Dies ist ein Arzeneimittel.
    Bei Risiken und Haluzinationen fressen sie die Packungsbeilage und schlagen Sie ihren Arzt oder Apotheker.
    Jede Haftung wird abgelent.

    Vielen Dank für Ihre Kundentreue.
    mfg. TimBlo

    Aperture Science

    http://www.youtube.com/watch?v=Y6ljFaKRTrI

  • Die roten Punkte sind später kleine Buttons mit Bild die als "Menü" dienen sollen.
    Nur bewegen diese sich frei in der GUI.

    Ich brauch also praktisch eine Funktion die,
    die Positionen der Buttons abfragt und die Möglichkeit bietet mit
    z.b. den Pfeiltasten die Mausposition zwischen ihnen zu wechseln.

    Ich hoffe ich habs gut genug erklärt xD

    • Offizieller Beitrag

    Also Ich kann dir dazu nur folgende Tipps geben:

    1. Die Mausposition mit MouseGetPos abfragen und dann mit der Position der Controls vergleichen. Damit solltest du dann rausbekommen, auf welchem Menü ein Mausklick gerichtet war. Wenn es Standart-Controls sind brauchst du die Positionsabfrage auch nicht. Da reicht dann auch die Messageabfrage.
    2. Frag die Tastatur ab, welche Tasten gedrückt wurden und setze dann den Focus entsprechend mit GuiSetFocus. Oder benutze eventuell GUISetAccelerators und weise jeder Taste einen Dummy-Control zu, den du dann in der GetMsg abfrage behandeln kannst.

    Da du aber keinen Code hast, mußt du schon selbst basteln ;)

  • Gut, das hat mir schon mal deutlich weitergeholfen,
    einziges Problem noch:

    Wie kann ich die Cords abfragen,
    die Maus mit MouseMove oder Fokus auf einen Button setzen..
    so das aber die Cords von den anderen Buttons weiter aktualisiert werden?

    $PosButton1 = xx (je nachdem wie ich sie später abfrage)
    $PosButton2 = xx (je nachdem wie ich sie später abfrage)
    $PosButton3 = xx (je nachdem wie ich sie später abfrage)

    Is ja einfach.
    Problem wäre halt das man zwischen ihnen "schalten" kann.
    Das ich z.b. mit der Maus automatisch bei Scriptstart über Button1 bin,
    und wenn ich auf die linke Pfeiltaste drücke die Maus auf den nächsten Button springt
    der weiter links ist (etc) o.o