AGB  ·  Datenschutz  ·  Impressum  







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

DBGrid Spaltengrößen fehlerhaft

Ein Thema von haentschman · begonnen am 15. Mär 2016 · letzter Beitrag vom 15. Mär 2016
Antwort Antwort
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.292 Beiträge
 
Delphi 12 Athens
 
#1

DBGrid Spaltengrößen fehlerhaft

  Alt 15. Mär 2016, 07:55
Hallöle...

Ich kann euch das leider nur sinngemäß erklären da ein Testprojekt garantiert funktioniert.

GEGEBEN:
Delphi Seattle

Viele Formulare mit jeweils einem DBGrid auf verschiedenen Parents (Panel, Groupbox, TabSheet). Für die Spalten existiert eine "Funktion" die die Spaltenbreite und Position wegspeichert und wieder herstellt. Funktioniert hunderte Male normal. Das Setzen der Spalten erfolgt jeweils im On Show.

IST:
Ein Formular schießt quer. Das Grid läßt sich nicht im On Show dazu bewegen die Spalten wieder herzustellen. ALLE Spalten sind exakt 64 breit auch wenn zur Designzeit andere Werte eingetragen sind. Testweise über einen Timer von 50ms nach OnShow die Spaltenformatierung gesetzt macht das was es soll.

Bei einem Kollegen war nur die Spalte 0 betroffen. Egal wie sie gesetzt war... zur Laufzeit immer 64.

Hat jemand dazu eine Idee?

Danke...
  Mit Zitat antworten Zitat
Thomas Horstmann

Registriert seit: 25. Apr 2007
86 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: DBGrid Spaltengrößen fehlerhaft

  Alt 15. Mär 2016, 08:16
Das ist ein Fehler in Delphi Seattle. Ich benutze "FormCreate" bzw. "FormClose" um die Breite zu laden/speichern.

Delphi-Quellcode:
procedure TWinDatabasesForm.FormCreate
( iSender : TObject ) ;
var
iRegistry : TRegistryIni ;
begin
{ Anlegen }
iRegistry := TRegistryIni.Create('Form\' + Name) ;
{ Spaltenbreite }
GridDatabases.ColWidths[0] := iRegistry.ReadInteger('GridDatabases','ColumnWidth1',GridDatabases.ColWidths[0]) ;
GridDatabases.ColWidths[1] := iRegistry.ReadInteger('GridDatabases','ColumnWidth2',GridDatabases.ColWidths[1]) ;
GridDatabases.ColWidths[2] := iRegistry.ReadInteger('GridDatabases','ColumnWidth3',GridDatabases.ColWidths[2]) ;
{ Löschen }
iRegistry.Free ;
end ;

...

procedure TWinDatabasesForm.FormClose
( iSender : TObject ;
  var iAction : TCloseAction ) ;
var
iRegistry : TRegistryIni ;
begin
{ Anlegen }
iRegistry := TRegistryIni.Create('Form\' + Name) ;
{ Spaltenbreite }
iRegistry.WriteInteger('GridDatabases','ColumnWidth1',GridDatabases.ColWidths[0]) ;
iRegistry.WriteInteger('GridDatabases','ColumnWidth2',GridDatabases.ColWidths[1]) ;
iRegistry.WriteInteger('GridDatabases','ColumnWidth3',GridDatabases.ColWidths[2]) ;
{ Löschen }
iRegistry.Free ;

{ Freigeben }
iAction := caFree ;
end ;
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.009 Beiträge
 
Delphi 12 Athens
 
#3

AW: DBGrid Spaltengrößen fehlerhaft

  Alt 15. Mär 2016, 08:22
Hast du Update 1 installiert?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.292 Beiträge
 
Delphi 12 Athens
 
#4

AW: DBGrid Spaltengrößen fehlerhaft

  Alt 15. Mär 2016, 08:56
Zitat:
Hast du Update 1 installiert?
leider nein.
Zitat:
Das ist ein Fehler in Delphi Seattle
...ist das amtlich?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.009 Beiträge
 
Delphi 12 Athens
 
#5

AW: DBGrid Spaltengrößen fehlerhaft

  Alt 15. Mär 2016, 09:48
Zitat:
Das ist ein Fehler in Delphi Seattle
...ist das amtlich?
regression: VCL TStringGrid.ColWidths is broken

Ist in Update 1 gefixed - daher meine Frage.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.292 Beiträge
 
Delphi 12 Athens
 
#6

AW: DBGrid Spaltengrößen fehlerhaft

  Alt 15. Mär 2016, 10:02
Hoch leben die Workarounds...

Danke an euer Mitgefühl. Jedenfalls wissen wir nun woran wir sind.
  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:06 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