wo speichere ich Gui

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Eragpm
User
Beiträge: 14
Registriert: Mittwoch 10. Juni 2020, 23:20

Hi ich wollte mal fragen wo man seine Gui so speichert wenn ich jetzt z.b.
einen Weg habe den ich auf ein Board legen will.

Code: Alles auswählen

class Way:
// ist ein hexagon 
	def __init__(self, name):
	self.name=name
	
class Board:
// hier möchte ich Way verwenden
speicher ich jetzt die Gui für Way in Way oder in Board oder wo anders ?
und wenn man sie in Way speichert auf was bildet man dass am besten ab (Label, Panel ,ka )
Benutzeravatar
__blackjack__
User
Beiträge: 13236
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Eragpm: Ich verstehe die Frage nicht so ganz. Haben diese beiden Klassen denn überhaupt etwas mit GUI zu tun? Das sieht mir eher nach Programmlogik aus, da hat GUI nichts drin zu suchen. Falls eine GUI geben soll die ein `Board` mit `Way`-Objekten darin anzeigen soll, dann übergibt man das `Board`-Objekt einer `BoardUi`-Klasse die das dann darstellt.

Wenn Du Python als Pseudocode verwendest, dann verwende doch auch wirklich Python und pack da nicht Kommentare rein die mit dem ganzahligen Divisionoperator eingeleitet werden.
Please call it what it is: copyright infringement, not piracy. Piracy takes place in international waters, and involves one or more of theft, murder, rape and kidnapping. Making an unauthorized copy of a piece of software is not piracy, it is an infringement of a government-granted monopoly.
Eragpm
User
Beiträge: 14
Registriert: Mittwoch 10. Juni 2020, 23:20

@__blackjack__ das mit den // war ein versehen dachte das wäre auch hier der einleiter für einen Kommentar
dann erklär ichs nochma besser
ich möchte eine klasse Way machen die, ist ein sechseck und besteht aus verbindungen zu anderen sechsecken das ist in der Variable Name gespeichert welche verbindungen
der Way hat und das Spiel funktiert wie folgt am Anfang ist besteht das spielFeld aus 7 Ways die ein größeres Sechseck bilden . jede runde deckt man einen Weg auf und muss ihn außen anlegen.
Welchen graphischen Typ würdet ihr den Way geben (label oder ka)?
Wird das dann auch alles in einer ExtraKlasse Board GUI gespeichert oder im Weg selbst?
Gibt es dafür vllt ein Tutorial wo man sein gui zeug speichert und wie man das macht hab nämlich noch nicht so viel Ahnung von GUi?
Benutzeravatar
__blackjack__
User
Beiträge: 13236
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Eragpm: So wirklich klarer wird es IMHO nicht. Man trennt üblicherweise Programmlogik und GUI, das heisst Du hättest Dein Spiel einmal komplett ohne GUI und das sollte ”spielbar” sein. Und darauf setzt man dann eine GUI auf, in dem man die Programmlogik an eine GUI-Klasse übergibt, die den aktuellen Spielzustand darstellt, und Benutzereingaben entsprechend auf der Programmlogik ausführt. Sowohl Programmlogik als auch GUI sind in der Regel sinnvoll auf Klassen aufgeteilt.

Man hat also beispielsweise einmal eine `Way`-Klasse in der Programmlogik, und dann eine `WayUi`-Klasse für die grafische Darstellung und eventuell Interaktion. Beides allerdings auch mit einem Fragezeichen versehen, denn vielleicht hat man eine `Board`-Klasse die intern die Weginformationen irgendwie anders repräsentiert und nach aussen Operationen anbietet die keinen dedizierten Typ für `Way` braucht. Auf der anderen Seite braucht man vielleicht keine eigene Klasse für so eine `WayUi` weil das GUI-Rahmenwerk schon etwas bietet was für Darstellung/Interaktion mit einem `Way` ausreicht. Das lässt sich schlecht sagen ohne zu wissen was für Operationen in der Programmlogik tatsächlich benötigt werden, und welches GUI-Rahmenwerk verwendet werden soll, und welche Möglichkeiten dort genutzt werden.

Bei der GUI könnte man bei Pygame beispielsweise für eine `WayUi` von `pygame.sprites.Sprite` ableiten. Bei Qt würde man wahrscheinlich auf dem „Graphics View Framework“ aufbauen und ein Sechseck mit einem `QGraphicsPolygonItem` darstellen.
Please call it what it is: copyright infringement, not piracy. Piracy takes place in international waters, and involves one or more of theft, murder, rape and kidnapping. Making an unauthorized copy of a piece of software is not piracy, it is an infringement of a government-granted monopoly.
Eragpm
User
Beiträge: 14
Registriert: Mittwoch 10. Juni 2020, 23:20

danke dann werde ich jetzt erstmal die programm logik machen :)
und das dann komplett hier rein posten
Antworten