Frage zur Menüprogrammierung
-
Hallo, ich möchte gerne ein Menü programmieren und dabei die Buttons und Fenster selber erstellen(d.h. nichts ala QT oder so) und zwar aus Spaß, falls irgendwer fragt.
Was ich mich dabei gefragt habe ist, ob es besser ist das Menü als Klasse kontrollieren zu lassen ob die Maus derzeit über einem Button/Fenster/anderem Objekt ist oder ich die Buttons das selber machen lassen soll? Ist zwar eigentlich egal, da das vernachlässigbare Ressourcen frisst, aber interessehalber interessiert mich das schon.
Derzeit tendiere ich dazu, das Menü das machen zu lassen, da ich sonst entweder bei jedem Button die Mausposition erneut abfragen muss oder die Position vor einem Durchlauf aller Elemente des Menüs abspeichern und den anderen Teilen zugangen darauf gewähren müsste. Aber ich bin mir nicht ganz sicher, ob das so gut ist.
Vielen Dank für eure Hilfe
-
GUIs sind oft hierarchisch aufgebaut. Ein toplevel-Widget kann also einige container widgets beinhalten die wiederum buttons oder auch noch mehr container beinhalten können.
Ich stelle mir den ablauf bei solchen Widget-hierarchien so vor:
Wenn ein Mausklick gemacht wird, dann überprüft zuerst das toplevel-Widget, ob ein kind-widget angeklickt wurde, wenn ja, dann wird dem kind widget bescheid gesagt, das dann wiederum gucken kann, ob ein kind-widget betroffen ist, oder ob es selbst gemeint ist usw..
Bei einem einfachen Menü wirst du vermutlich nur ein toplevel-widget (fenster) plus ein paar Menüeinträge haben. Also wäre es denke ich ok, wenn die fenster-klasse überprüft, was angeklickt wurde.
-
Ok vielen dank, dann lege ich mal los