Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
30. Nov 2007
Hallo Holger,
wenn es sehr schön aussehen soll, dann wirst du alles selbst zeichnen müssen. Einfach nur das HighLighting des Auswahlbereiches kannst du so eliminieren:
procedure TDemoForm.StringGridDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
with Sender as TStringGrid do
if (gdSelected in State) then
Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
29. Nov 2007
Hallo,
was verstehst du unter Umranden und was unter Ausfüllen?
Ich habe dein Umranden mit FocusRect gleichgesetzt und Ausfüllen mit der hervorgehobenen Selektion.
Wenn du RangeSelect eingeschaltet (default) hast, dann benötigst du eine visuelle Hervorhebung. Hast du diese Option abgeschaltet, dann brauchst du meinen Code garnicht, solange das Grid den Fokus hat, da eine einzelne Zelle nie...
Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
29. Nov 2007
Hallo Holger,
wenn du die Selektion nicht farbig hervorgehoben sehen willst, dann hast du wahrscheinlich RangeSelect abgeschaltet:
procedure TDemoForm.StringGridSelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
begin
with Sender as TStringGrid do
Selection := TGridRect(Rect(-1, -1, -1, -1));