Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung) (https://www.delphipraxis.net/179356-firemonkey-alternative-fuer-lazarus-modellbahnsteuerung.html)

TForm1 2. Mär 2014 12:27

FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Hallo zusammen,

ich programmiere gerade an einem Projekt für eine Modellbahnsteuerung und bin jetzt zu dem Punkt gekommen, die GUI für den Gleisplan zu erstellen. Jetzt stellt sich für mich die Frage, wie ich das anfangen soll. Ich habe mehrere Wünsche, was der Gleisplan alles können sollte:

- Beliebige Vergrößerung/Verkleinerung, d.h. der Gleisplan sollte eine Vektorgrafik sein
- Gleisbelegtmeldung mit mehreren wechselnden Farben
- Gleisplan sollte Maßstabsgetreu sein, also nicht abstrakt wie bei normaler MoBa- Software
- Die Züge als Symbole sollten den Gleislinien fließend folgen (am besten wäre sogar die Zuglänge jeweils mit anzuzeigen, sodass man sieht wo ein Zug endet/anfängt)
- Man sollte auf die verschiedenen Grafischen Elemente klicken können, z.B. durch Doppelklick auf einen Zug die Zuginformationen aufrufen

Mit FireMonkey würde das recht komfortabel gehen, nur mit der LCL von Lazarus wird das schwierig, oder gibt es da Alternativen?
Im Internet habe ich zum Thema Modellbahnsteuerung/ Gleisplan ein paar Sachen gefunden, die aber alle nicht die oben genannten Wünsche erfüllen.

Wie würdet ihr eine solche Grafik versuchen zu programmieren?

Jens01 2. Mär 2014 12:54

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Ich kenne mich mit FMX zwar nicht aus, aber dafür wird es eher ungeeignet sein.
Das, was Du machen willst ist eine ganz schöne Aufgabe.
Ich würde Graphics32 nehmen, was mittlerweile auch unter Lazarus läuft. Alternativ ginge auch noch OpenGL, was aber wohl noch umfangreicher wäre.

TForm1 2. Mär 2014 13:46

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von Jens01 (Beitrag 1250188)
Ich kenne mich mit FMX zwar nicht aus, aber dafür wird es eher ungeeignet.

Ich habe mal gelesen, dass sie im MiWuLa für die GUI auch FireMonkey verwenden, deswegen hab ich als erstes daran gedacht.
Graphics32 klingt interessant, werde ich mir mal anschauen; Nur Graphics32 ist doch nicht Vektor- orientiert, oder?

jaenicke 2. Mär 2014 13:54

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von TForm1 (Beitrag 1250196)
Ich habe mal gelesen, dass sie im MiWuLa für die GUI auch FireMonkey verwenden, deswegen hab ich als erstes daran gedacht.

Das sah für mich nicht danach aus. Das sieht selbst gezeichnet aus, und das geht mit Lazarus wie mit Delphi.

himitsu 2. Mär 2014 14:15

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Vorallem da die Software für's MiWuLa schon vor FireMonky geschrieben wurde, wenn ich mich da nicht täusche.

Und ich hatte vergessen draufzugucken, als ich da war.
Aber da die doch eh weg von Delphi wollen, sollte man lieber nicht noch in den Wunden rumstochern.

[edit]
Antwort erstmal gestrichen ... versuche erstmal die Quelle zu finden und das dann nochmal genauer zu schreiben.

[edit2]
Siehe Antworten bis Post #20, für die Erklärung, warum dieses "Gerücht auftauchte.

TForm1 2. Mär 2014 14:56

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von himitsu (Beitrag 1250214)
Vorallem da die Software für's MiWuLa schon vor FireMonky geschrieben wurde, wenn ich mich da nicht täusche.

Das habe ich mich auch gefragt, denn bis 2012 hatten die da noch Delphi von 2006 am Start. Ich habe es in dem Artikel, der auch hier kursierte, gelesen:
Zitat:

...Das Miniatur Wunderland nutzt dazu unter anderem die GUI-Komponentenbibliothek FireMonkey. Alle weiteren Bibliotheken hat der Autor selbst geschrieben...
Vielleicht meint er auch nur die neuere Kassensoftware, da hat er auch in einem seiner Tagebücher drüber erzählt. Dann wird die Oberfläche von den älteren Programmen eher "selbstgebastelt" sein.

Mein Ziel ist auf jeden Fall einen ähnlichen Gleisplan mit den oben genannten Features zu erstellen.

MEissing 3. Mär 2014 09:15

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von himitsu (Beitrag 1250214)
Und ich hatte vergessen draufzugucken, als ich da war.
Aber da die doch eh weg von Delphi wollen, sollte man lieber nicht noch in den Wunden rumstochern.

Mitnichten.

Ich habe mich letzte Woche mit Gerrit getroffen.....

Woher hast Du deine "Weisheiten"?

<kopfschüttelnd>

mkinzler 3. Mär 2014 09:20

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Aus einer Aussage in der c't, dass er heute das Projket nicht mehr mit Delphi starten würde. Was aber natürlich nicht heisst, dass er von Delphi weg gehen will.

Medium 3. Mär 2014 09:45

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Die Graphics32 ist selbst an sich kein Vektor-Framework, nein. Aber sie eignet sich prima um recht schnell als Punktlisten gespeicherte Dinge zu zeichnen. (Auch OpenGL wäre "nur malen", mehr machen diese Libs nicht.) Alles dahinter, sprich die gesamte Logik der Abbildung "Eingangssignale -> Darstellung" und des Klick-Handlings wäre Handarbeit. Da es meines Wissens nach da aber auch nichts genau passendes in diese Richtung gibt, wird es ohnehin weitgehend darauf hinaus laufen. Sicherlich kein kleines Unterfangen mehr, dafür aber auch recht spannend.

Der schöne Günther 3. Mär 2014 09:47

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von Jens01 (Beitrag 1250188)
Ich kenne mich mit FMX zwar nicht aus, aber dafür wird es eher ungeeignet sein.

Ich kenne mich mit FMX zwar auch nicht aus, habe aber bislang noch keinen konkreten Grund dagegen gesehen. Kann jemand einen bringen? Es geht doch hier konkret um einen "Gleisplan", nicht eine komplette Anwendung mit Textfeldern und sonstwas.

mkinzler 3. Mär 2014 09:51

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von Jens01:
Ich kenne mich mit FMX zwar nicht aus, aber dafür wird es eher ungeeignet sein.
FireMonkey basiert/hat Funktionen für Vektorgrafik. Es wäre also imho geeignet.

MEissing 3. Mär 2014 09:53

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Aus der c't
"Er würde wohl eine C-Variante lernen und sich mehr mit objekt* orientierter Programmierung und Vererbung befassen, glaubt er."

Daraus einen Weggang von Delphi zu interpretieren halte ich schon für grenzwertig mutwillig.

bernau 3. Mär 2014 09:57

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von Jens01 (Beitrag 1250188)
Ich kenne mich mit FMX zwar nicht aus, aber dafür wird es eher ungeeignet sein.

Selten so gelacht. Diese Aussagen finde ich immer klasse.

Ich weis zwar nicht wie der nächste Mercedes aussieht, aber ich glaube er gefällt mir nicht. :lol::lol:

DeddyH 3. Mär 2014 10:05

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Ich weiß zwar nicht, wie das nächste Windows aussieht, aber es gefällt mir bestimmt nicht :mrgreen:
Nochmal zum dem c't-Artikel: ich habe ihn nicht mehr exakt im Kopf, aber IIRC war es doch so, dass der Programmierer im Studium Pascal gelernt und seine Steuerung deshalb in Delphi geschrieben hat. Allerdings war OOP für ihn Hexenwerk bzw. ist es wohl heute noch. Im Laufe der Zeit hat er dann mit zunehmendem Wachstum der Software gemerkt, dass er sich vielleicht doch besser mit diesem Hexenwerk auseinander gesetzt hätte, daher auch der zitierte Ausspruch.

TForm1 3. Mär 2014 10:23

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von mkinzler (Beitrag 1250372)
FireMonkey basiert/hat Funktionen für Vektorgrafik. Es wäre also imho geeignet.

Deswegen war meine Frage, ob es etwas entsprechendes für Lazarus gibt.
Ich habe bei mir jetzt mal die Graphics32 Komponente installiert, werde mich aber erst einmal neu einarbeiten müssen. Kennt einer von Euch ein gutes Tutorial dazu?

PS: Dass sie im MiWuLa von Delphi weggehen wollten, hatte ich jetzt auch nicht so interpretiert zumal der Nutzen eines Umschreibens in C++ bei der Größe des Projektes sicherlich nicht die Nachteile durch den Zeitverlust und das komplette Neulernen der Sprache überwiegt.

DeddyH 3. Mär 2014 10:29

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Falls Du noch Alternativen suchen solltest: http://wiki.freepascal.org/Graphics_libraries. Ich bin jetzt nicht wirklich der Grafik-Experte, hatte mit aber vor einiger Zeit auch mal die Graphics32 angeschaut. Wenn ich es jetzt nicht verwechsle, war da doch eine erkleckliche Anzahl Demos dabei?

himitsu 3. Mär 2014 10:49

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von MEissing (Beitrag 1250366)
Woher hast Du deine "Weisheiten"?

Vor paar Jahren (2-4) wurde hier mal drüber diskutiert, über Programme, die in Delphi geschrieben wurden.

Auf die Schnelle fand ich es jetzt nicht wieder, aber ich schau heute abend nochmal.
Was ich schon entdeckte, das es 2010/11 noch in Delphi 6 geschrieben war und man sich fragte ob und wann man es schafft das auf Delphi 2009/10 hochzuziehen, was nicht schlecht klingt und eher dagegen spricht.

Wollte ihn schon anschreiben und direkt nachfragen, aber wenn du schon mit ihm gesprochen hast?


Die "kleinen" Sachen sind aber in C geschrieben, da Delphi dort nicht läuft.

Jens01 3. Mär 2014 10:52

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Wenn ich es jetzt nicht verwechsle, war da doch eine erkleckliche Anzahl Demos dabei
Ja, es sind ganz gute Demos dabei. Die Hilfe ist auch sehr gut, kann abers sein, dass sie nicht mehr ganz vollständig ist, da das Ding gerade neu aufgesetzt wird.
Hast Du mal dies Codetyphon ausprobiert? Da sind die Libs schon alle drauf.

TForm1 3. Mär 2014 11:20

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von DeddyH (Beitrag 1250378)
...war da doch eine erkleckliche Anzahl Demos dabei?

Es gibt tatsächlich einige Demos, doch ich kann nur ein paar von denen öffnen. Bei manchen kommt gar nichts, wenn ich die Projektdatei öffne, und bei manchen fehlen Komponenten. :gruebel:
Ansonsten gibt es ja auch eine ausführliche Dokumentation, muss ich mir dann mal näher ansehen.

Zitat:

Zitat von himitsu (Beitrag 1250379)
Was ich schon entdeckte, das es 2010/11 noch in Delphi 6 geschrieben war und man sich fragte ob und wann man es schafft das auf Delphi 2009/10 hochzuziehen, was nicht schlecht klingt und eher dagegen spricht.

Das haben sie definitiv hinbekommen, da hat er mal drüber berichtet.

himitsu 3. Mär 2014 11:28

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von TForm1 (Beitrag 1250382)
Das haben sie definitiv hinbekommen, da hat er mal drüber berichtet.

Im Tagebuch fand Google vorhin noch nichts, aber das jetzt alles nochmal detailliert durchzugehen, dafür hab ich jetzt noch keine Zeit.

Falls diese Aussage wirklich mal von Gerrit kam ... eventuell war das zwischendurch nur mal eine kurzzeitig genervte Unicodeumstellungsfrustantwort, die garnicht ganz ernst gemeint war.
So ala "hätte ich das vorher gewusst, dann hätte ich umgestellt, bevor die nächsten 70.000 neuen Codezeilen vom Flughafen dazugekommen sind und dann auch noch der Hafen". :shock:


Zitat:

Zitat von MEissing (Beitrag 1250373)
Aus der c't
"Er würde wohl eine C-Variante lernen und sich mehr mit objekt* orientierter Programmierung und Vererbung befassen, glaubt er."

Daraus einen Weggang von Delphi zu interpretieren halte ich schon für grenzwertig mutwillig.

Ohhh, vielleicht wurde es ja damals wirklich nur falsch verstanden. :oops:

TForm1 3. Mär 2014 13:01

AW: FireMonkey- Alternative für Lazarus?(Modellbahnsteuerung)
 
Zitat:

Zitat von himitsu (Beitrag 1250384)
Im Tagebuch fand Google vorhin noch nichts, aber das jetzt alles nochmal detailliert durchzugehen, dafür hab ich jetzt noch keine Zeit.

Hier sagt er das gleich am Anfang; das Tagebuch ist zwar eher an nicht-Programmierer gerichtet, deswegen geht er nicht näher darauf ein aber anscheinend hat es ja (wenn auch mit viel Ärger) geklappt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz