Das verwenden von VIELEN Panels.
-
Guten Tag,
habe leider bei der SGD den "C++" Kurs besucht.
Doch nun versuche ich mein Wissen mal einzusetzenMeine Frage ist folgende:
Ich möchte ein Programm schreiben das anhand des Fensternamen eines Programms
Buttons und andere Steuerelemente ein bzw. ausblendet.Leicht finde ich ist das über Panel zu realisieren. Doch da ich in meinem Programm
anstatt normale Buttons bereits Panels verwende (wegen Bilder und so denn es ist für einen Touchscreen gedacht) ist nun eine Frage ob es ok ist in einer GUI sehr viele Panels die auch noch verschachtelt sind zu nutzen. Oder ob es da evtl eine bessere Lösung gibt.Auch wenn ich auf Panels anstatt Buttons verzichte habe ich sehr viele Panels in Gebrauch. Gibt es evtl eine sinnigere Lösung ?
Danke schonmal im vorraus.
MfG Tahlon
-
gibt es keine bessere Möglichkeit ?
-
Was sind denn "sehr vielen"? 100.000?
-
naja bisher sind es halt so um die 200.
Ich denke es werde nochmal soviele, darum die Frage ob es dafür eine bessere Lösung gibt.Danke schonmal für deine Antwort.
-
Sind denn die 400 Panels auf Win7 irgendwie ruckelig oder flackerig, so daß es den User stört?
-
Nein, bisher rennt es im Programm recht ordentlich. Nur meine IDE wird mittlerweile etwas langsam.
Aber gut, dann scheine ich ja bisher doch alles richtig zu machen
Danke für eure Antworten
-
Tahlon schrieb:
Nein, bisher rennt es im Programm recht ordentlich. Nur meine IDE wird mittlerweile etwas langsam.
Ja, die muß unzählige Zusatzinformationen herumwirbeln.
Generell hast Du als Entwickler einen viel schnelleren Rechner als der Anwender zu haben.Tahlon schrieb:
Aber gut, dann scheine ich ja bisher doch alles richtig zu machen
Vermutlich. Ich kenne ja das Problem nicht.
Aber der Beschreibung nach scheint es mir, daß es mit 400 Panels deutlich einfacher zu programmieren ist. Solange der Kunde das nicht spürt, daß es theoretisch schneller sein könnte…
Also ich verrate es Deinem Kunden nicht.Außerdem kommt der Kunde mit Sicherheit später noch angeschissen und will Änderungen haben, die vorher gar nicht abgesprochen waren. Und wenn der Kunde der normale Arbeitgeber ist, dann erst recht.
edit: Hoffentlich will er keine 40000 Panels haben (wegen des großem Erfolges). Dann hättest Du aufs falsche Pferd gesetzt. Das mußt Du wissen, was er haben will.
-
In dem Fall bin ich selbst mein Kunde
und ich kann nur sagen das ich bisher zufrieden bin.Doch nur um es zu wissen, welche Möglichkeiten gibt es noch ?
-
Tahlon schrieb:
Doch nur um es zu wissen, welche Möglichkeiten gibt es noch ?
Ich weiß nicht genug, um was es geht.
Sind es Objekte wie Schachbrettfelder mit Schachfiguren drin, dann kannste auch selber die Rechtecke der Schachfelder zeichnen und die Figuren reinzeichnen, statt 64 Panels zu machen. Hier würde ich auch eher für 1 großes Panel stimmen.
Sind es lauter Zahlen, kannste sie genauso auf den Bildschirm drücken, also in Dein Hauptpanel, wie Du beim Lernheft mit dem Drucken vorgegangen bist, Koordinaten berechnen und hinrotzen.
Sollen die Dinge sogar interaktiv sein, auf Mausklicks reagieren, kannste zudem die Mouse-Messages behandeln, herausfinden, auf welche Zahl sie zeigen, und behandeln. Da wird der Aufwand aber langsam blödsinnig groß, fürchte ich.Im Prinzip haste nur die Wahl zwischen "Elemente aus der Toolbox es machen lassen" und "Selber machen zu deutlich erhöhtem Programmier-Aufwand".
Manche Sachen wie ein TreeView sind so arg schwierig, daß man sie gar nicht selber hinkriegen kann, ohne allein dafür ein halbes Jahr zu opfern.
-
Ok, ich schildere mal etwas genauer worum es geht
Ich habe ein Win7 Tablet im Wohnzimmer und einen HTPC fürs Entertainment
Auf dem HTPC rennt ein Programm über das ich Filme/TV und sowas schaue.
Nun möchte ein auf dem Tablet eine art "Fernbedienung" schreiben.
Ich habe damit bisher auch keinerlei Probleme bis auf ein kleines beim genauen Verständnis was den TCPclient angeht aber das ist nicht wichtig denn das wichtigste rennt ja alles.Nunja um halt die GUI auch Wohnzimmer-tauglich zu gestalten, zeichne ich mir die
passenden Bilder halt in Photoshop und packe diese dann in die Panels als Buttons.Da ich aber für die Einzelnen Module des Programms was auf dem HTPC laufen habe
einen anderen Satz Buttons brauche, habe ich erstmal für jedes Modul ein Panel erstellt. Was aufgerufen wird sobald das passende Modul auf dem HTPC an ist.Naja das ergibt jedenfalls massig Pannels, da ich wie gesagt für jeden Button
und so ein Pannel anlege
-
Geiles Projekt!
Also absolut, Mann.Und jetzt bin ich wohl ausreichend im Bilde, um ob meiner langjährigen Erfahrung eindeutig sagen zu können: Ich weiß es nicht. Sorry.
Ich tendiere ganz leicht zur Viel-Panel-Version. Zu überlegen ist wohl nur, was passiert, wenn Du in 5 Jahren ein neues Panel mit anderer Auflösung anschaffst, und so ein Kram. Oder die Anpaßbarkeit, weil das Produkt vielleicht so geil wird, daß Du es für Geld vertreiben willst.
edit:
Ich denke, "Gesten" sprechen für die 1-Panel-Version. Und der Wunsch nach nicht nur anklickbaren Buttuns, sondern verschiebbaren (Lautstärke)-Reglern sprechen für ein Grid-Layout, was auch schwieriger wird, weil so ein Regler gleich vier übereinaderliegende Kacheln belegen mag. Andererseits kann man "Gesten" drunter abfangen. Jetzt tendiere ich leicht zur 1-Panel-Version. Das ändert sich bestimmt noch im Laufe des Tages ein paar mal.