请问如何获得StringGrid中多行选择的内容?(100分)

  • 主题发起人 主题发起人 lipingcool
  • 开始时间 开始时间
L

lipingcool

Unregistered / Unconfirmed
GUEST, unregistred user!
我在StringGrid中选择了多个单元(连续),请问如何能获得这些单元的内
容?
另请问如何实现选择不连续的多个单元(例如Ctrl+鼠标)?
 
程序的一部分,是对多个单元赋值,你自己改改吧。

procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
var m,n,m1,m2,n1,n2:integer;
disp:string;
begin
m1:=stringgrid1.selection.left;
n1:=stringgrid1.Selection.Top;
m2:=stringgrid1.Selection.Right;
n2:=stringgrid1.Selection.Bottom;
if (m1<>m2) or (n1<>n2) then
begin
for m:=m1 to m2 do
for n:=n1 to n2 do
stringgrid1.Cells[m,n]:=dispcel;
exit;
end;
...
 
问题基本解决了。但是代码应该放在 onmouseup 事件中,否则的话,不能立即得到所选的内容。
 
接受答案了.
 
后退
顶部