AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi StringGrid Spalte mit Namen "ansprechen"
Thema durchsuchen
Ansicht
Themen-Optionen

StringGrid Spalte mit Namen "ansprechen"

Ein Thema von Nils S. · begonnen am 13. Mai 2014 · letzter Beitrag vom 15. Mai 2014
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.326 Beiträge
 
Delphi 12 Athens
 
#1

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 14. Mai 2014, 13:51
In einem StringGrid haben die spalten einen Namen?
Nja, man kann die Namen zumindestens als Hashlist anlegen.
[edit] Achso, in FM ... in der VCL gibt's da jedenfalls Keine.

PS: Ohne Performanceverlust: Konstanten für die Spaltenindize.
(man kann die auch als Record/Class-Const anlegen und hatt dann auch noch einen Namespace davor ... siehe die neuen TColor)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 14. Mai 2014, 14:15
PS: Ohne Performanceverlust: Konstanten für die Spaltenindize.
(man kann die auch als Record/Class-Const anlegen und hatt dann auch noch einen Namespace davor ... siehe die neuen TColor)
Das wird aber nichts bringen, denn wenn die Spalte Name von der 3. auf die 1. Position wechselt und const Name_Col_Idx = 3; dann sprichst du die falsche Spalte an
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.326 Beiträge
 
Delphi 12 Athens
 
#3

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 14. Mai 2014, 14:24
Nja, entweder man pflegt das, oder löst es über variablen, welche man befüllen lässt

und in der VCL gibt es eh keinen Namen, wo es dann egal wäre.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 14. Mai 2014, 14:34
Nja, entweder man pflegt das, oder löst es über variablen, welche man befüllen lässt

und in der VCL gibt es eh keinen Namen, wo es dann egal wäre.
In FMX sind die einzelnen Spalten Komponenten, die an das StringGrid gehängt werden (darum haben die Namen) und da unterscheiden die sich.

Worin sich die VCL/FMX-StringGrids nicht unterscheiden ist, dass das Umsortieren der Spalten eine Benutzereingabe ist, die man natürlich respektieren (merken) sollte und das Programm darauf auch reagieren lassen (wenn man es denn schon zulässt).

Am einfachsten geht das wohl mit einer Delphi-Referenz durchsuchenTCollection. Dort gibt es neben der ID auch einen Index.
Die ID bleibt immer gleich nur der Index verändert sich beim umsortieren.

Wenn man jetzt das Event Delphi-Referenz durchsuchenTStringGrid.OnColumnMoved nimmt und diese Informationen an die Collection weitergibt, dann kann man über die ID auch den aktuellen Index herausfinden und hat die passende Spalte an der Hand.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Nils S.

Registriert seit: 10. Apr 2014
36 Beiträge
 
Delphi XE5 Professional
 
#5

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 15. Mai 2014, 13:21
Eine Frage habe ich dann doch noch.

Am Anfang der Funktion wird Result auf nil gesetzt.
Warum ist das nötig?
Result ist am Anfang einer Funktion, auch wenn sie mehrmals aufgerufen wird, doch immer "nichts" oder?

Und
Ist schon klar, die Frage steht andererseits auch unter "Programmieren allgemein".
Gibt es einen anderen Ort, wo solche Fragen lieber gepostet werden sollten?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#6

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 15. Mai 2014, 13:24
GUI-Design mit VCL / FireMonkey / Common Controls böte sich IMO an.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.326 Beiträge
 
Delphi 12 Athens
 
#7

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 15. Mai 2014, 14:12
Result ist sowas wie eine lokale Variable und wenn in der For-Schleife nichts gefunden und dem Result zugewiesen wird, auf was würde das Result dann stehen?
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Nils S.

Registriert seit: 10. Apr 2014
36 Beiträge
 
Delphi XE5 Professional
 
#8

AW: StringGrid Spalte mit Namen "ansprechen"

  Alt 15. Mai 2014, 14:54
Undefiniert?^^
  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 06:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz