![]() |
Re: DBGrid Selected Rows: Abgewählte Zeile bleibt markiert?
Morgen!
Kann mir vielleicht jemand ´ne gute alternative zum DBGrid empfehlen in der dieses Problem nicht auftritt? Ne´Lösung mit DBGrid wäre natürlich noch besser, aber wenn´s nicht anders geht... Gruss Philipp |
Re: DBGrid Selected Rows: Abgewählte Zeile bleibt markiert?
Hallo Philipp,
wo ist dein Problem? Du überträgst deine Erfahrung (Pfeil = current selected row) auf ein DBGrid mit MultiSelect und das ist nicht korrekt. Hier ist ein Pfeil (es gibt zwei Darstellungen des Pfeils) nur der Zeiger für die current row - ein Punkt markiert eine selektierte Row. Wenn du ein DBGrid nur in der MainForm verwendest und die Option MultiSelect während der Laufzeit nicht verstellst, dann gibt es auch keine Irritation auf Seiten des Benutzers. Freundliche Grüße vom marabu |
Re: DBGrid Selected Rows: Abgewählte Zeile bleibt markiert?
Zitat:
sie es jetzt ist oder nicht. Da ich ausserhalbe der IDE auf den Indikator verzichte ist es für den Anwender auch nicht ersichtlich. Zitat:
anklickt, dann bleibt das "Highlight" erhalten, auch wenn er/sie ein zweites mal darauf klickt um sie abzuwählen. In diesem Moment ist nicht mehr ersichtlich ob die Zeile nun gewählt ist oder nicht. Sollte der Anwender eine andere oder weitere Zeile anwählen, so wird dieses "Highlight" aufgehoben. Falls nicht: -> mein Problem... |
Re: DBGrid Selected Rows: Abgewählte Zeile bleibt markiert?
Das mit dem abgeschalteten Indicator ist jetzt aber neu - oder habe ich so ungenau gelesen?
Eines könntest du noch versuchen: Setze DBGrid.DefaultDrawing auf FALSE und wähle eine eigene Farbe für die selektierten Datensätze im Gitter:
Delphi-Quellcode:
Grüße vom marabu
procedure TDemoForm.DBGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var Index: Integer; begin with Sender as TDBGrid do begin if SelectedRows.Find(Column.Field.DataSet.Bookmark, Index) then begin Canvas.Brush.Color := clBlue; Canvas.FillRect(Rect); end; DefaultDrawColumnCell(Rect, DataCol, Column, State); end; end; |
[Erl]DBGrid Selected Rows: Abgewählte Zeile bleibt markiert?
Vielen Dank!
Ist eine gute Idee! Hab´sogar kürzlich erst ´n Thread dazu gelesen, kam aber nicht drauf es für mein Problem zu nutzen... Gruss Philipp |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:47 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-2025 by Thomas Breitkreuz