我想更改 ControlList 的提示,檢測滑鼠在哪一行,例如提示可以說“第 6 行”
我知道我可以使用 TStringList 來做到這一點,如下例所示。
TStringList 示例:
procedure TForm1.StringGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
Col, Row: Integer;
begin
StringGrid1.MouseToCell(X, Y, Col, Row);
StringGrid1.Hint := IntToStr(Col) ' ' IntToStr(Row);
end;
控制串列示例:
procedure TForm1.ControlList1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
var
Row: Integer;
begin
ControlList1. <--------Looking for something like Mouse to Row
ControlList1.Hint := IntToStr(Row);
end;
僅供參考,在 ControlList BeforeDraw Item AIndex 中可用。獲得 AIndex 或 Row 會很棒。
ControlList1BeforeDrawItem(
AIndex: Integer; ACanvas: TCanvas; ARect: TRect; AState: TOwnerDrawState);
uj5u.com熱心網友回復:
TControlList公開屬性HotItemIndex了點。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/373130.html
上一篇:TIdHTTP檔案流不完整的下載
