AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi FixedRow in TDrawGrid bleibt nicht stehen
Thema durchsuchen
Ansicht
Themen-Optionen

FixedRow in TDrawGrid bleibt nicht stehen

Ein Thema von Graf Gustav · begonnen am 31. Mär 2020 · letzter Beitrag vom 5. Apr 2020
Antwort Antwort
Graf Gustav

Registriert seit: 13. Mär 2011
48 Beiträge
 
Delphi 10.4 Sydney
 
#1

FixedRow in TDrawGrid bleibt nicht stehen

  Alt 31. Mär 2020, 13:10
Wahrscheinlich finde ich zu diesem Effekt nichts, weil die Lösung zu banal ist:
Die Fixed Row in einem Drawgrid bleibt nicht stehen, sondern wird mit rausgescrollt.
Die Zellen fülle ich im OnDrawCell-Ereignis.
Die Komponente ist auch eher unspektakulär:
Delphi-Quellcode:
  object dgUmsVal: TDrawGrid
    Left = 8
    Top = 216
    Width = 929
    Height = 252
    FixedCols = 0
    TabOrder = 1
    OnDblClick = dgUmsDblClick
    OnDrawCell = dgUmsDrawCell
    ColWidths = (..)
    RowHeights = (..)
  end
Fällt dazu jemand etwas spontan ein?
VG
Reinhold
Reinhold
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: FixedRow in TDrawGrid bleibt nicht stehen

  Alt 31. Mär 2020, 13:11
Hallo,
und und wo ist hier FixedRows oder wird das per Programm gesetzt?
Heiko
  Mit Zitat antworten Zitat
Graf Gustav

Registriert seit: 13. Mär 2011
48 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: FixedRow in TDrawGrid bleibt nicht stehen

  Alt 31. Mär 2020, 13:13
Die ist standardmäßig 1 und steht deshalb nicht explizit in der dfm.
Reinhold
  Mit Zitat antworten Zitat
hhcm

Registriert seit: 12. Feb 2006
Ort: Wegberg
309 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: FixedRow in TDrawGrid bleibt nicht stehen

  Alt 31. Mär 2020, 13:22
Und in OnDblClick und OnDrawCell wird nich zufällig noch etwas verändert?
Ich habe schon ein paar Sachen mit dem Grid gemacht. Die FixedRow bleibt bei mir immer stehen.
Chris
  Mit Zitat antworten Zitat
Graf Gustav

Registriert seit: 13. Mär 2011
48 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: FixedRow in TDrawGrid bleibt nicht stehen

  Alt 5. Apr 2020, 16:08
So, Ursache gefunden.
Wenn sich die Anzahl der Listeneinträge ändert, die in dem Grid abgebildet werden,
ist zwangsläufig ein RowCount := <neue Anzahl + 1) erforderlich.
Bei mir sieht das im Prinzip so aus:
Delphi-Quellcode:
DrawGrid1.RowCount := 1;
DrawGrid1.RowCount := Succ(TList1.Count);
RowCount := 1 setzt FixedRows auf 0. (Null verschiebbare Zeilen nicht zulässig?)

Dieses 'Reset'-Vorgehen hat mir irgendwann ein Darstellungsproblem gelöst,
aber da hatte ich wahrscheinlich keine Fixed Row.
In diesem Fall müsste ich es lassen, oder auf FixedRow +1 setzen oder FixedRows neu setzen.

Danke nochmal
Reinhold
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

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

AW: FixedRow in TDrawGrid bleibt nicht stehen

  Alt 5. Apr 2020, 16:22
RowCount := 1 setzt FixedRows auf 0. (Null verschiebbare Zeilen nicht zulässig?)
Ja, das ist sogar dokumentiert (Vcl.Grids.TCustomGrid.FixedRows):
Zitat:
Anmerkung: Ein Gitter muss mindestens eine Zeile enthalten, die verschoben werden kann. Stellen Sie FixedRows nicht auf einen größeren Wert als RowCount - 1 ein.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  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 12:29 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