ListView在Report状态下,在那个事件中可以捕获记录上移、下移(或:当前所在行的改变)?(100分)

  • 主题发起人 wang3003
  • 开始时间
W

wang3003

Unregistered / Unconfirmed
GUEST, unregistred user!
前提:ListView在Report状态下,且有多条记录。
问题:1 在ListView中有多条数据,在界面上另有一些TEdit来显示ListView当前记录
的详细信息,希望当ListView中上移或下移动到其它记录时,各TEdit中的信息
跟随着一起变化。在ListView哪个事件里做?
2 另外,我希望在ListView中,从当前记录滚动到另一条记录时,能够现做出判断,
然后再决定是否可以离开当前记录,如果不允许,则回到原记录上。
在哪个事件中处理?
[:)]
 
ListView 的 OnKeyDown and OnMouseDown
我就是这样干的,虽然是笨办法:)
 
是啊,我和BETA一样,我是ONCLICK/ONKEYDOWN
 
在 OnSelectItem 事件
 
to 轻松虎:
若ListView在Report状态下,且有多条记录。并且设置了CheckBoxes属性为true,
我想在点击某条记录的CheckBox时先做一个判断,然后决定该CheckBox的Checked状态
能否改变,请问该点击CheckBox的动作在那个事件中可捕获?
能够示范一下,非常感谢!!!
 
//在它的OnChange事件里可以实现你说的功能
ListView.Item有多种属性,如Index,Caption等,下面的例子是用Index属性作为判断条件
决定是否改变
procedure TForm1.ListView1Change(Sender: TObject; Item: TListItem;
Change: TItemChange);
begin
if Item.Index <> 0 then //如果是头一条记录,则不改变
Exit;
if ctState in [Change] then
Item.Checked := False;
end;
 
OnChanging 事件 里 AllowChange
 
非常感谢大家!
 
顶部