stringGrid如果涉及到按shift进行多行删除记录的情况,怎么实现?
解决方案 »
- 200rmb请人写一个简单图形验证识别 并下载网页源代码的程序
- 菜鸟问题:关于DateTimePicker控件问题
- Clientdataset的同步更新
- 怎么把下载的控件使用?
- 请教!什么样的程序员才算是技术全面的程序员?
- 我有两个listbox控件,我现在想把listbox1的内容逐条或全部,或选中的部分搬到listbox2中,请问怎么做啊
- 关于maskedit的几个问题?
- 哪位要吧提供active skin 4.2 或4.22的注册吗,谢谢!
- 如何取得MDB库中的表名???
- 写缓冲区数据到文件的问题(帮忙吧,小弟改不过来啦)源码
- 哪位大哥能提供一下创建虚拟拔号连接的源程序。感激不尽啊
- Delphi中 html如何转换为xml
Shift: TShiftState; X, Y: Integer); var i,m,n,m1,m2,n1,n2:integer;
mgarray:array[0..100]of string;
begin
m1:=stringgrid1.selection.left;
n1:=stringgrid1.Selection.Top;
m2:=stringgrid1.Selection.Right;
n2:=stringgrid1.Selection.Bottom;
i:=0;
if (m1<>m2) and (n1<>n2) then
begin
//for m:=m1 to m2 do
for n:=n1 to n2 do
begin
mgarray[i]:=stringgrid1.Cells[0,n]; //memo1.Text:=('m1:'+inttostr(m1)+' n1:'+inttostr(n1)+' m2:'+inttostr(m2)+' n2:'+inttostr(n2));
memo1.Text:=memo1.Text+mgarray[i];
inc(i);
end;
end;
end;end.搞成了,自己回了,以上代码是取所删除行的关键字存入一个数组mgarray。之后通过循环对数据库对应表的关键字进行删除操作就行了。stringgrid的数据删除也是获取行坐标进行倒序的删除。(m相当于x轴,n相当于y轴。行标m1到m2相当于x轴的长度,列标n1到n2相当于y轴的长度。也就是坐标(m1,n1)和(m2,n2)是所选矩形的左上角和右下角的坐标)