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/)
-   -   Delphi XE2 - Firemonkey (https://www.delphipraxis.net/162972-delphi-xe2-firemonkey.html)

bernau 11. Sep 2011 17:59

Delphi XE2 - Firemonkey
 
Nach drei Tagen auf den Delphi-Tagen und einem Tag "herumspielen" mit Delphi XE2 muss ich sagen, daß ich begeistert von Firemonkey bin. Ein ganz neuer Ansatz mit vielen Vorteilen und Nachteilen.

Fange ich mal mit den Nachteilen an:

Propertys wurden teilweise geändet. Es gibt z.B. nicht mehr "Left" und "Right", sondern "Position.X" und "Position.Y". "Caption" wurde zum großen Teil durch "Text" ersetzt. Ein einfaches Umschalten von VCL auf Firemonkey ist fast unmöglich. Auch wenn man ein Programm schreiben würde, welches die DFM automatisch wandeln könnte, wird das bei Properties, die im Quellcode gesetzt werden nicht wirklich funktionieren.

Offiziel sollen VCL-Formulare und FM-Formulare nicht gleichzeitig in einer Anwendung verwendet werden. Es gibt wohl schon einige User, die einen Mixbetrieb hinbekommen haben, wer weis aber, ob es nach einem Update von XE2 immer noch funktioniert. Daher ist ein Umstellen einer VCL-Anwendung auf eine FM-Anwendung "zug um zug" nicht möglich. Eine Umstellung einer Anwendung mit vielen Forumularen ist fast unmöglich.

Properties sind teilweise nicht mehr existent. Es gibt kein Property "Color" oder "Font.Color" bei einem TEdit mehr. (Auch bei vielen weiteren Komponenten.) Ich habe z.B. häufig die Farbe eines TEdit auf Rot gesetzt, wenn eine Eingabe fehlt oder fehlerhaft ist. Geht nicht mehr. Zumindest nicht wie bisher.

Ich habe einige Darstellungsfehler gefunden. Mit diesen Fehlern kann man eine Anwendung nicht wirklich an Kunden verteilen. Denke daß diese Fehler mit den nächsten Updates behoben werden.


Vorteile:

Das Konzept: Es werden nicht mehr die Standardcontrols des BS verwendet. Das ist für eine Anwendung, die auf mehreren BS verwendet wird, wirklich gut. Kein QT wie bei Kylix.

Alles ist vektororientiert aufgbaut. Die Komponenten lassen sich wunderbar "zoomen". Kein verkorkstes Formular, wenn der Anwender den Bildschirm auf 120dpi statt auf 96dpi gesetzt hat.

Der Nachteil des fehlenden Color-Properties relativiert sich, wenn man mal die Styles anschaut. Die Style-Dateien sind Texte und können einfach erweitert werden (Mit dem Style-Editor habe ich das noch nicht hinbekommen). Den Style "editstyle" habe ich kopiert, eingefügt mit dem Namen "editstyleError" und bei der gewünschten Komponente dem Property "StyleLookup" den Wert "editstyleError" zugewiesen. Schon wird das Edit mit einer anderen Farbe angezeigt. Ich kann also in einer Stylevorlage diese Sachen definieren und der ganzen Anwendung zuweisen. Klasse. Entspricht quasi dem CSS-Prinzip von HTML. Dies werde ich in einem witeren Thread noch mal genau erklären.

Jede visuelle Komponente kann weitere Komponenten beinhalten. Wie ein TPanel bei der VCL. Finde ich eine gute Sache. Allerdings muss man beim Einfügen von Komponenten aufpassen. Schnell ist eine Komponente einer anderen Komponente zugewiesen.

Die Animationen, die man fast jeder Komponente zuweisen kann sind beeindrucken. Ob es sich nun um Größnanimantionen oder Farbanimationen handelt. Dezenzt verwendet, wird die Anwendung schon beeindruckend aufgepeppt.


So. Das war erst mal mein erster Eindruck.


Fazit: Von meinen Anwendungen werde ich die kleinen Anwendungen porrtieren und neue Anwendungen mit Firemonkey beginnen. Für meine große Anwendung mit 300 Formularen werde ich die Umstellung wahrscheinlich nicht durchführen.

daywalker9 11. Sep 2011 18:22

AW: Delphi XE2 - Firemonkey
 
Mixen kann man VCL/FMX mit Hydra von RemObjects soweit ich das mitbekommen und richtig in Errinerung habe.

Daniela.S 11. Sep 2011 18:35

AW: Delphi XE2 - Firemonkey
 
Man sollte unter den Nachteilen auch noch der Vollständigkeit halber erwähnen, dass FireMonkey Anwendungen eigene Stile haben und auf Windows, sowie auf Mac und iOS teilweise und je nach Anwendungsfall wie Fremdkörper aussehen. Die Stile bilden die jeweiligen Designs nur nach, sehen und fühlen sich aber anders an. Daher denke ich, sollte man sie wirklich mit bedacht einsetzen.

Stimmt, mit Hydra kann man beide Welten mischen und gleichzeitig auch noch Komponenten aus .net verwenden.

Stevie 11. Sep 2011 18:38

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von daywalker9 (Beitrag 1123349)
Mixen kann man VCL/FMX mit Hydra von RemObjects soweit ich das mitbekommen und richtig in Errinerung habe.

Oder mit meiner Lösung. Zugegeben, die ist experimentell (bisher aber kein Feedback im Sinne von "funzt net" bekommen), aber kostet ja auch nix. Zum ausprobieren also allemal zu empfehlen.

bernau 11. Sep 2011 18:59

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von Daniela.S (Beitrag 1123351)
Die Stile bilden die jeweiligen Designs nur nach, sehen und fühlen sich aber anders an. Daher denke ich, sollte man sie wirklich mit bedacht einsetzen.

Sicher richtig. Die vorhandenen Stile sind aber schon ganz gut nachgebildet. Man muss natürlich bedenken, daß eine Änderung der Stile im BS nicht von Firemonkey übernommen werden. Wenn man damit leben kann (ich) ist das OK.

arnold mueller 11. Sep 2011 19:11

AW: Delphi XE2 - Firemonkey
 
Firemonkey hat sicherlich großes Potential. Es macht derzeit aber noch einen unfertigen Eindruck auf mich. Das sich Properties geändert haben finde ich nicht so schlimm, im Gegenteil "Position.X" beschreibt es doch besser als "Left". Deutlich mehr stört mich das Fehlen von Actions.

daywalker9 11. Sep 2011 19:15

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von arnold mueller (Beitrag 1123360)
Firemonkey hat sicherlich großes Potential. Es macht derzeit aber noch einen unfertigen Eindruck auf mich. Das sich Properties geändert haben finde ich nicht so schlimm, im Gegenteil "Position.X" beschreibt es doch besser als "Left". Deutlich mehr stört mich das Fehlen von Actions.

Es ist ja aus der Sicht das 1.0 von Emba, auch wenn es FireMonkey schon vorher als VGScene gab. Und Updates sollen ja demnächst schon kommen..

Union 11. Sep 2011 19:22

AW: Delphi XE2 - Firemonkey
 
Nette Spielerei allemal. Aber ohne vernünftige DB z.b. Core Data wirklich momentan nicht mehr. Die Produktintegration von Borland/CodeGear/Embarcadero bleibt wenigstens konsequent inkonsequent. Quickreport, Rave, CLX, VCL.NET um nur mal einge zu nennen. Ich stelle mir schon lebhaft das Kundengespräch vor.

Entwickler:"Super Neuigkeiten, wie stellen jetzt auf die neueste Delphi Version um".
Kunde:"Na Klasse, was bringt uns das?"
E:"Unsere Serverdienste können jetzt die gesamte Datenbank in den Hauptspeicher laden, die laufen dann unter 64-bit"
K:"Grunz"
E:"Und sie können unser Programm dann nicht nur auf den 5000 Windows-Arbeitsplatzrechnern, sondern auch auf den 3 Macs in Ihrer Marketingabteilung starten."
K:"Super Mehrwert"
E:"Halt, das ist noch nicht Alles. Unsere Programme laufen dann auch auf IPhone. Aber nur die Screens, Daten können nicht bearbeitet werden."
K:"Mit der Technik bin ich nicht so bewandert. Das hört sich ja sehr modern an, würden denn zusätzliche Kosten anfallen?"
E:"Die neuen Tools würden natürlich wir bezahlen. Sie zahlen nur die komplette Neuentwicklung der Oberfläche, das sind maximal 600 MT".

daywalker9 11. Sep 2011 19:27

AW: Delphi XE2 - Firemonkey
 
Es hat ja auch niemand erwartet das direkt alle Features vorhanden sind, die das Mac OS bietet.

Daher sollte man auch Feedback bei Emba abgeben :)

arnold mueller 11. Sep 2011 19:37

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von daywalker9 (Beitrag 1123361)
Es ist ja aus der Sicht das 1.0 von Emba, auch wenn es FireMonkey schon vorher als VGScene gab. Und Updates sollen ja demnächst schon kommen..

Ja schon klar, aber für mich ist es zu früh darüber nachzudenken meine Anwendungen auf Firemonkey zu heben. Ich werde wieder darüber nachdenken, wenn OSX und Linux unterstützt wird. Bis dahin dürften dann auch die kleinen - sagen wir mal Imponderabilien - ausgemerzt sein.

daywalker9 11. Sep 2011 19:38

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von arnold mueller (Beitrag 1123374)
Zitat:

Zitat von daywalker9 (Beitrag 1123361)
Es ist ja aus der Sicht das 1.0 von Emba, auch wenn es FireMonkey schon vorher als VGScene gab. Und Updates sollen ja demnächst schon kommen..

Ja schon klar, aber für mich ist es zu früh darüber nachzudenken meine Anwendungen auf Firemonkey zu heben. Ich werde wieder darüber nachdenken, wenn OSX und Linux unterstützt wird. Bis dahin dürften dann auch die kleinen - sagen wir mal Imponderabilien - ausgemerzt sein.

Bei neuen Projekten sollte man sicher schon drüber nachdenken, bei existierenden sollte man sich überlegen ob sich der Aufwand überhaupt lohnt.

SvB 11. Sep 2011 20:51

AW: Delphi XE2 - Firemonkey
 
Na ja, XE2 ist jetzt auch erst ein paar Tage draußen und wir sollten dem Ganzen auch noch ein bisschen Zeit geben. Zumal ist auch abzuwarten, welche Drittanbieter Zusatzkomponenten für FireMonkey anbieten. Ich denke, dass man noch mal zwei bis drei Monate warten sollte um sich dann noch mal einen Überblick verschaffen. Das Ganze natürlich in der ganzen Zeit weiter beobachten und auch selbst etwas mit Firemonkey rumspielen.

Wie ich auch gelesen habe ist das mixen zwischen VCL und Firemonky schon irgendwie möglich. Vielleicht kann man so ein Formular nach dem anderen auf FireMonkey umstellen bis man dann irgendwann alle hat. Dann kann man auch die Betriebssystemunabhängigkeit weiter verfolgen. Inwiewiet das natürlich für eine bestehende Anwendung Sinn macht, bleibt jedem selbst überlassen.

Stevie 11. Sep 2011 20:55

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von SvB (Beitrag 1123402)
Wie ich auch gelesen habe ist das mixen zwischen VCL und Firemonky schon irgendwie möglich. Vielleicht kann man so ein Formular nach dem anderen auf FireMonkey umstellen bis man dann irgendwann alle hat. Dann kann man auch die Betriebssystemunabhängigkeit weiter verfolgen. Inwiewiet das natürlich für eine bestehende Anwendung Sinn macht, bleibt jedem selbst überlassen.

Naja, selbst in einer schon existierenden VCL Anwendung kann an der einen oder anderen Stelle ein bisschen FMX gut was her machen (drehendes Firmenlogo in 3D oder so)

Insider2004 11. Sep 2011 21:08

AW: Delphi XE2 - Firemonkey
 
Das Mixen von FM und VCL ist offiziell von EMBA nicht erlaubt. Wenn es geht, gut, wenn sich die App aufhängt, selbst schuld.

Stevie 11. Sep 2011 21:16

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von Insider2004 (Beitrag 1123406)
Das Mixen von FM und VCL ist offiziell von EMBA nicht erlaubt.

Falsch, es ist nicht offiziell supportet. Auf meine Frage diesbezüglich am Samstag, verwies Matthias ja selbst auf die Lösungen aus der DelphiPraxis. ;)

Zitat:

Zitat von Insider2004 (Beitrag 1123406)
Wenn es geht, gut, wenn sich die App aufhängt, selbst schuld.

Ich kann es auch gern nochmal wiederholen: FireMonkey ist keine Neuerfindung, sondern basiert zu einem Großteil auf der KSDEV Technologie. Und diese funktionierte schon jahrelang unter VCL Anwendungen (worunter auch sonst). Ebenso läuft GLScene schon jahrelang auf VCL Anwendungen.

Natürlich ist man bei einem Mischbetrieb auf Windows festgelegt, aber das sollte wohl klar sein. Offiziel wird es mMn nicht unterstützt, damit man sich nicht mögliche Supportfälle und Inkompatibilitäten einhandelt.

milo 12. Sep 2011 07:55

AW: Delphi XE2 - Firemonkey
 
War ebenfalls die drei Tage in Köln. Mit Gerd. :-D

Ein Punkt der hier nicht so ganz unerwähnt bleiben sollte ist, dass es derzeit noch keinen Report-Generator gibt. Weder von Emba noch von Drittanbietern. Laut Emba soll wohl etwas von FastReport ins Auge gefasst werdne, weil es bereits bei dem 32-/64-Bit XE2 dabei ist.

Und: Durch die Einbindung des (Delphi-)Codes von FireMonkey in die Anwendung werden die Programme natürlich auch etwas größer.
Mischen geht schon, verhindert aber, dass das Programm Crossplattform fähig ist.

Aber ich bin zuversichtlich, dass es bald ein paar Patches geben wird!

Gruß Milo

mquadrat 12. Sep 2011 08:02

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von bernau (Beitrag 1123358)
Sicher richtig. Die vorhandenen Stile sind aber schon ganz gut nachgebildet. Man muss natürlich bedenken, daß eine Änderung der Stile im BS nicht von Firemonkey übernommen werden. Wenn man damit leben kann (ich) ist das OK.

:shock:

Äh nein. Siehe mein Eröffnungspost im FireMonkey Sammelthread. Im Win7 Stil stimmt so gut wie gar nichts.

Union 12. Sep 2011 08:04

AW: Delphi XE2 - Firemonkey
 
Genau. Ich möchte jedenfalls nicht, dass über meine Programme genauso gelästert wird wie von mir früher über die SWING Applikationen der Kollegen ;)

mquadrat 12. Sep 2011 08:16

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von Union (Beitrag 1123431)
Genau. Ich möchte jedenfalls nicht, dass über meine Programme genauso gelästert wird wie von mir früher über die SWING Applikationen der Kollegen ;)

:lol: Jep, die ersten waren wirklich fies anzuschauen. Vor allem war dieser Stil untrennbar mit "langsam" verbunden. Egal ob das Programm letzendlich wirklich langsam war oder nicht ;)

bernau 12. Sep 2011 08:20

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von mquadrat (Beitrag 1123430)
Äh nein. Siehe mein Eröffnungspost im FireMonkey Sammelthread. Im Win7 Stil stimmt so gut wie gar nichts.

Kann man ja noch anpassen. Aber ein bischen von anderen grafisch Absetzten finde ich nicht schlecht.

Adobe Lightroom verwendet ja auch nicht den Windows-Syle. Wird dennoch gerne genommen und viele setzen jetzt auf das "dunkle" Layout.

mkinzler 12. Sep 2011 08:34

AW: Delphi XE2 - Firemonkey
 
Das Selbige gilt ja auch für WPF. Zudem plant MS den Einsatz von XAML auch für native Anwendungen

mquadrat 12. Sep 2011 09:26

AW: Delphi XE2 - Firemonkey
 
Zitat:

Zitat von bernau (Beitrag 1123442)
Kann man ja noch anpassen. Aber ein bischen von anderen grafisch Absetzten finde ich nicht schlecht.
Adobe Lightroom verwendet ja auch nicht den Windows-Syle. Wird dennoch gerne genommen und viele setzen jetzt auf das "dunkle" Layout.

Ein komplett anderer Stil ist aber auch was anderes als ein schlecht umgesetzter Pseudo-Nativer. Aber da für FMX ja noch Updates kommen sollen, sind vielleicht auch korrekte Windows-Themes dabei.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:39 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