AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[FMX] Ansatz gesucht: Panels duplizieren?

Ein Thema von warschonweg · begonnen am 8. Apr 2018 · letzter Beitrag vom 9. Apr 2018
Antwort Antwort
Seite 1 von 2  1 2      
warschonweg

Registriert seit: 2. Okt 2014
31 Beiträge
 
#1

[FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 19:11
Ich hätte gern für den Eigengebrauch ein Programm, das ungefähr so aussehen soll:

Code:
+---------------------------------------------------+
| Textfeld                           Textfeld       |
| Combobox                                          |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
| [+]                                [ Process ]    |
+---------------------------------------------------+
Ein Klick auf "[+]" soll weitere Zeilen hinzufügen (das ganze Feld sitzt in einer Scrollbox, so weit logisch kein Problem):

Code:
+---------------------------------------------------+
| Textfeld                           Textfeld       |
| Combobox                                          |
|                                                   |
| Textfeld                           Textfeld       |
| Combobox                                          |
|                                                   |
| Textfeld                           Textfeld       |
| Combobox                                          |
|                                                   |
|                                                   |
|                                                   |
|                                                   |
| [+]                                [ Process ]    |
+---------------------------------------------------+
Nach einem Klick auf "Process" sollen alle Felder zeilenweise verarbeitet werden. Weil ich das Programm auch gern unter Android nutzen würde, erwäge ich FireMonkey als GUI-Framework - ansonsten müsste ich zu einer anderen Sprache greifen und das will ich nicht unbedingt.

Mir fehlt allerdings gerade ein guter Ansatz: Wie kann ich das realisieren? Die einzelnen Zeilen sollten vermutlich ein Gridpanel sein (wegen der Positionierung) - aber wie "klone" ich die dann am besten?

Danke für jede Hilfe.
Nach Diktat verreist,
[war schon weg].
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.053 Beiträge
 
Delphi 2009 Professional
 
#2

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 19:37
Zeilen als Frames anlegen?
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
warschonweg

Registriert seit: 2. Okt 2014
31 Beiträge
 
#3

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 20:06
Klingt auch gut - habe ich nie gemacht. Haben Frames eine Klonfunktion?
Nach Diktat verreist,
[war schon weg].
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 21:01
Du erstellst eine neue Komponente zur Laufzeit. Ein Frame ist genauso eine Komponente wie ein TButton . Wenn du ihn nach dem Hinzufügen mit [+] noch mit bestimmten Inhalt vorbelegen willst kannst du dem Frame einfach eine Methode verpassen die du danach aufrufst.

PS: Einen "Hinzufügen"-Button hätte ich links unten als aller letztes erwartet. Lange eingebürgert hat sich eigentlich ein dauerhaft sichtbarer Button über dem Scrollcontainer oder ein schwebender (+) Button ganz am Ende der Liste.

Geändert von Der schöne Günther ( 8. Apr 2018 um 21:04 Uhr)
  Mit Zitat antworten Zitat
warschonweg

Registriert seit: 2. Okt 2014
31 Beiträge
 
#5

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 21:07
Danke für den Designtipp - ich denke wahrscheinlich zu desktopmäßig gerade.
Zum Erstellen der Komponente: Gucke ich mir mal an. Vielleicht kriege ich es ja hin.
Nach Diktat verreist,
[war schon weg].
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.053 Beiträge
 
Delphi 2009 Professional
 
#6

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 21:41
Ein Frame ist einfacher zu erstellen als eine Komponente. Man erstellt einfach einen Frame im Designer und den instanziiert man dann zur Laufzeit. (Aus zur Entwurfszeit instanziierten Frames macht der Designer ohnehin nichts Vernünftiges.)

Delphi-Quellcode:
var
  Frames: TList<TMeinFrame>;

...

procedure TMeineForm.ButtonAddClick(Sender: TObject);
begin
  Frames.Add(TMeinFrame.Create(Self));
  with Frames[Frames.Count-1] do
  begin
    { Startwerte in den Frame schreiben usw. (falls nötig) }
    Parent := Self; // wichtig, funktioniert sonst nicht
  end;
end;
Janni
2005 PE, 2009 PA, XE2 PA

Geändert von Redeemer ( 8. Apr 2018 um 21:43 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 22:39
Tut mir leid wenn ich es nochmal anspreche obwohl ich glaube das manche sagten es sei doof.
Ich selbst benutze für so etwas eine Scrollbox in der dynamisch Panels erstellt werden, auf den Panels lege ich rauf was immer ich will, sprich: alles was man an Komponenten hat steht damit frei auch eingesetzt zu werden.
Realisiert hab ich es indem ich mir einmal solch ein Panel per IDE erstellt habe um anschließend die Informationen der .DFM als Dynamische Panels weiter zu verwenden.
Für die Panels selbst nutz ich mittlerweile eine Class da ich sehr oft so etwas brauche, das Gerüst der Class ist wiederverwendbar
Damit bin ich auch schon wieder still.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
warschonweg

Registriert seit: 2. Okt 2014
31 Beiträge
 
#8

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 8. Apr 2018, 22:57
Ich selbst benutze für so etwas eine Scrollbox in der dynamisch Panels erstellt werden, auf den Panels lege ich rauf was immer ich will, sprich: alles was man an Komponenten hat steht damit frei auch eingesetzt zu werden.
Das war auch mein initialer Gedanke - ich suche aber erst mal Input von Leuten, die das schon mal gemacht haben.

Reddemer: Danke für den Code!
Nach Diktat verreist,
[war schon weg].
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#9

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 9. Apr 2018, 00:40
Tut mir leid wenn ich es nochmal anspreche obwohl ich glaube das manche sagten es sei doof.
Ich selbst benutze für so etwas eine Scrollbox in der dynamisch Panels erstellt werden, auf den Panels lege ich rauf was immer ich will, sprich: alles was man an Komponenten hat steht damit frei auch eingesetzt zu werden.
Realisiert hab ich es indem ich mir einmal solch ein Panel per IDE erstellt habe um anschließend die Informationen der .DFM als Dynamische Panels weiter zu verwenden.
Für die Panels selbst nutz ich mittlerweile eine Class da ich sehr oft so etwas brauche, das Gerüst der Class ist wiederverwendbar
Damit bin ich auch schon wieder still.
Das geht mit Frames auch, nur viel einfacher.

Ein Frame ist ein Container (ähnlich einem Panel).

Da packt man drauf, was immer man dort haben will, Buttonereignisse ... kann man direkt im Frame implementieren, Plausibilitätsprüfungen, die für die Komponenten im Frame untereinander erforderlich sind ...

Man macht sich das einmal fertig und durch das Einfügen dieser Frames (z. B. in 'ne Scrollbox) hat man ganz simple die gesamte Funktionalität dupliziert. Kann man in etwa so nutzen, wie eine Komponenten, die viele weitere Komponenten enthält.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: [FMX] Ansatz gesucht: Panels duplizieren?

  Alt 9. Apr 2018, 03:01
Hallo Delphi.Narium, ich finde interessant das Frames so etwas können und würde mich damit auch bald beschäftigen um, falls tatsächlich besser, meine Class rauszuwerfen.
Momentan werden bei mir ja die Controls automatisch durchnummeriert um damit später was anfangen zu können, wie funktioniert es bei Frames mit den Controls darauf wenn Frames selber über eine "Replizier/Duplizier" funktionalität verfügt?
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:54 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