AGB  ·  Datenschutz  ·  Impressum  







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

XE5: StringGrid zur Entwurfszeit füllen?

Ein Thema von Kralle · begonnen am 11. Apr 2014 · letzter Beitrag vom 13. Apr 2014
Antwort Antwort
Kralle

Registriert seit: 31. Okt 2004
Ort: Bremerhaven
355 Beiträge
 
Delphi XE7 Professional
 
#1

XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 19:22
Moin,

gibt es einen Weg ein StringGrid zur Entwurfszeit schon mit Inhalt zu füllen?
Ich suche eine Weg Parametersätze zur Entwurfszeit "einfach" einzugeben um dann zur Laufzeit darauf zuzugreifen.
Da ich zur Laufzeit durch Checkboxen und Co Parameter setze aktivieren bzw. deaktivieren will, brauche ich auch noch eine Spalte für den Status.
Zur Laufzeit würde ich das Grid dann visible=false setzen.

Alternativ könnte ich bei jeder Checkbox den Paramtersatz in eine Stringlist schreiben bzw. dort suchen und löschen - was ich nicht für praktikabel halte.

Mehrdimentionales Array hatte ich auch schon mal überlegt, bedeutet aber auch sehr viel Tipparbeit.
Ein kleine Datenbank finde ich etwas überdimensioniert.

Hättet Ihr noch eine andere Idee

Gruß Heiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)

Geändert von Kralle (11. Apr 2014 um 19:23 Uhr) Grund: Ergänzung
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 19:30
Warum verwendest Du dafür keine TObjectlist? Wenn Du da den constructor der Items bzw. das Add() geschickt aufbaust, hast Du es sehr übersichtlich.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#3

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 20:06
Anzeige-Komponenten sind nicht dafür gedacht, Daten zu speichern, sondern lediglich dafür, sie darzustellen. Neben der Objektliste könntest du auch ein ClientDataSet verwenden oder einen Record-Typen deklarieren und davon eine Array-Variable anlegen. Das ClientDataSet verfügt bereits über Lade- und Speichermethoden und kommt einem Datenbank-Einsatz am Nächsten.

Alle diese Techniken incl. der Objektliste sind genau so schwer oder leicht zu erlernen und umzusezten wie eine Datenbank-Anwendung. Mit anderen Woren: Ohne Anstrengung geht's nicht.
  Mit Zitat antworten Zitat
Kralle

Registriert seit: 31. Okt 2004
Ort: Bremerhaven
355 Beiträge
 
Delphi XE7 Professional
 
#4

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 20:54
Hallo,

Warum verwendest Du dafür keine TObjectlist? Wenn Du da den constructor der Items bzw. das Add() geschickt aufbaust, hast Du es sehr übersichtlich.
Aber, auch die TObjectlist wird zur Laufzeitgefüllt oder zur Entwurfszeit mit ".Add()".
Ich suche einen Weg zur Entwicklungszeit wie bei der TListBox wo ich über der den Objektinspektor die Daten eingeben kann.

Gruß Heiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)
  Mit Zitat antworten Zitat
Kralle

Registriert seit: 31. Okt 2004
Ort: Bremerhaven
355 Beiträge
 
Delphi XE7 Professional
 
#5

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 21:01
N'abend,

Anzeige-Komponenten sind nicht dafür gedacht, Daten zu speichern, sondern lediglich dafür, sie darzustellen.
Schon klar, wäre in diesem Fall aber ein so schöner Weg gewesen.
Zitat:
Neben der Objektliste könntest du auch ein ClientDataSet verwenden.
Das ClientDataSet verfügt bereits über Lade- und Speichermethoden und kommt einem Datenbank-Einsatz am Nächsten.
Ich hatte ich auch schon dran gedacht, mit einem "TDBGrid" verbunden könnte ich zur Entwicklungszeit die Daten eingeben.

Zitat:
Alle diese Techniken incl. der Objektliste sind genau so schwer oder leicht zu erlernen und umzusezten wie eine Datenbank-Anwendung. Mit anderen Woren: Ohne Anstrengung geht's nicht.
Das ist schon klar.
Mal sehen was ich am besten umsetzen kann?

Gruß HEiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#6

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 22:34
Sourcecode entsteht übrigens auch zur Entwicklungszeit. Die einfachste Methode wäre sicherlich die Verwendung eine Client-Datasets (Nachteil: benötigt immer noch midas.dll) oder aber eine der zahlreichen Memory-Datasets, die oft auch einen Daten-Editor mitbringen.
Noch ein Weg wäre die Verwendung einer Objectlist, für die Du Dir dann eine eigene Komponente erstellst, mit der Du die Persistenz im Formular und das Editieren regelst.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 11. Apr 2014, 23:01
(Nachteil: benötigt immer noch midas.dll)
Nein. Wenn man "midaslib" in die Usesliste aufnimmt muss die DLL nicht mit verteilt werden!
Ralf Kaiser
  Mit Zitat antworten Zitat
Kralle

Registriert seit: 31. Okt 2004
Ort: Bremerhaven
355 Beiträge
 
Delphi XE7 Professional
 
#8

AW: XE5: StringGrid zur Entwurfszeit füllen?

  Alt 13. Apr 2014, 08:45
Hallo Ralf,

(Nachteil: benötigt immer noch midas.dll)
Nein. Wenn man "midaslib" in die Usesliste aufnimmt muss die DLL nicht mit verteilt werden!
Diese Info habe ich sofort umgesetzt.
Danke.

Heiko
OS: Windows 10 Professional, Delphi XE7 Pro SP1 +(Mobilpack & FireDAC)
  Mit Zitat antworten Zitat
Antwort Antwort

 

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 00:52 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