怎样在DBGRID中用SHIFT进行连续多行选择(100分)

  • 主题发起人 foodbird
  • 开始时间
F

foodbird

Unregistered / Unconfirmed
GUEST, unregistred user!
设置了MultiSelcte后只能用CTrl选择一行一行的选,希望能实现用SHIFT进行连续多行选择
 
只能通过编程实现吧。当鼠标按下时判断SHIFT是否按下
 
to wwolf
我知道,也能判断Shift键按下,但后面如何写
 
dbgrid的option中有此项
 
to jsony
有吗,是什么
 
可以实现的,我以前作过,单现在忘了,
 
dbgrid中的options中的dgMultiSelect
要是想对选中的记录做操作,可以使用书签变量TBookmark;
var bm:Tbookmark;
for i:=0 to dbgrid1.selectedRows.count -1 do
begin
gotobookmark(pointer(dbgrid1.selectedRows.items));
bm:=GetBookmark; //记录当前标签位置
try
...
finally
FreeBookmark(bm); //用过的标签要释放,否则IDE环境下报错
end;
我是用dbgrideh实现的 ,应该是一样的。
 
是用书签的,以前我花了2个小时做出来了,不过,现在用的是第三方控件,
呵呵呵,应该可以的自己试一试,很着急就用第三方控件,我找找有没有以前的代码了
 
我已经解决了,没有用书签,只要用
SelectedRows.CurrentRowSelected := not SelectedRows.CurrentRowSelected;
再加上一些代码就行,

to Alex_HJ
我对书签我不了解,你能不能把其解决方法完整的给我一份
 
另外再问一个问题:
有没有办法实现对选中行的隐藏;
 
使用DBGRIDEH控件不就行了吗?
 
多人接受答案了。
 
顶部