【问题标题】:How to get notified when the user clicks the header column check box in VirtualTreeView control?当用户单击 VirtualTreeView 控件中的标题列复选框时如何获得通知?
【发布时间】:2015-05-13 14:16:06
【问题描述】:

是否有关于 VirtualTreeView 标题列复选框单击的事件通知?就是这张图片上突出显示的复选框:

【问题讨论】:

  • OnColumnsHeaderClick你可以测试if (hhiOnCheckbox in HitInfo.HitPosition) then
  • @TLama 我认为您的意思是“OnHeaderClick”。而且效果很好!谢谢!
  • 哦。当然,它是OnHeaderClick。我从实际应用程序中复制了部分方法名称(其中 VT 与导出列相关,因此名称中有额外的 Columns)。
  • 现在,我怎样才能得到这个标题复选框的状态呢?我尝试了很多,但找不到这样做的方法。

标签: delphi virtualtreeview tvirtualstringtree


【解决方案1】:

OnHeaderClick 事件编写一个处理程序并检查HitInfo 参数的HitPosition 属性是否包含hhiOnCheckbox 标志。例如:

procedure TForm1.VirtualTreeHeaderClick(Sender: TVTHeader; HitInfo: TVTHeaderHitInfo);
begin
  if hhiOnCheckbox in HitInfo.HitPosition then
  begin
    if Sender.Columns[HitInfo.Column].CheckState = csCheckedNormal then
      ShowMessage('Checked!')
    else
      ShowMessage('Unchecked!')
  end;
end;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多