![]() |
AW: TStringGrid -[goRowSelect] wird nicht visualisiert
Zitat:
Denn
Delphi-Quellcode:
führt dazu, das nach wie vor alle Zellen der Zeile selektiert sind. Lediglich die Darstellung verändert sich ein wenig. Während bei einem goRowSelect alle Zellen mit 1 gemeinsamen Rahmen versehen sind, nach diesen beiden Zeilen alle Zellen mit einem eigenen Rahmen versehen. Sind aber noch alle markiert.
strngrd1.Options:=strngrd1.Options-[goRowSelect];
strngrd1.Col:=1; Zitat:
Hier, mach dir mal ne Form mit einen StringGrid und 4 Buttons und probier das mal aus.
Delphi-Quellcode:
Du wirst feststellen, dass beim Klick auf btn1 außer der visuellen Veränderung, wie ich oben geschrieben habe, nicht viel passiert. Auch nicht, wenn man noch mal drauf klickt. Erst wenn man danach mal auf btn2 klickt, wird tatsächlich die 2 Zelle auch selektiert.
unit Unit1;
interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Grids; type TForm1 = class(TForm) strngrd1: TStringGrid; btn1: TButton; btn2: TButton; btn3: TButton; btn4: TButton; procedure btn4Click(Sender: TObject); procedure btn1Click(Sender: TObject); procedure btn2Click(Sender: TObject); procedure btn3Click(Sender: TObject); procedure FormShow(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.btn1Click(Sender: TObject); begin strngrd1.Options:=strngrd1.Options-[goRowSelect]; strngrd1.Col:=1; end; procedure TForm1.btn2Click(Sender: TObject); begin strngrd1.Options:=strngrd1.Options-[goRowSelect]; strngrd1.Col:=2; end; procedure TForm1.btn3Click(Sender: TObject); begin strngrd1.Options:=strngrd1.Options-[goRowSelect]; strngrd1.Col:=3; strngrd1.Selection:=TGridRect(Rect(strngrd1.FixedCols,strngrd1.Row,strngrd1.FixedCols,strngrd1.Row)); end; procedure TForm1.btn4Click(Sender: TObject); begin strngrd1.Options:=strngrd1.Options+[goRowSelect]; end; procedure TForm1.FormShow(Sender: TObject); begin btn4Click(self); end; end. Wohingegen ein klick auf btn3 immer funktioniert. btn4 selektiert dann wieder die ganze Zeile. PS: Die visuelle Veränderung, die ich oben erwähne, kann aber bei einer anderen OS- oder Delphiversion möglichweise sich anders darstellen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 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