问题标签 [tlistview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
255 浏览

delphi - TListView - 如何控制 Viewstyle = vsIcon 中的矩形项目大小?

我需要在Viewstyle = vsIcon. 不使用LargeImages(我将在“OnCustomDrawItem”上绘画)。

我可以完成这项工作的唯一方法是为LargeImages宽度/高度 = 120 指定一个“虚拟”TImageList。

否则项目 rect 未定义(也使用 OwnerDraw=True)

这个怎么做?

0 投票
2 回答
844 浏览

delphi - 随时随地显示来自 db 的图像

在 Delphi 中,我在详细信息表中存储了未知数量的图像文件名。这些图像文件可以是位图、Jpegs、PNGS 和 ICO 文件。

在旅途中加载和显示列表视图或列表框中的范例/最佳实践是什么?
我认为我需要以某种方式将它们加载到主表的 OnBeforeScroll 事件中的 ImageList 中,然后将其分配给列表视图。使用的数据库组件是 dbGO。

我只需要显示预定义大小的缩略图(在 VCL 程序中)。

0 投票
0 回答
239 浏览

delphi - 使 TListView 组标题不可点击

我有一个带有组的 TListView。有没有办法使组标题不可点击,以便它们像简单的分隔符一样起作用?TListGroupState似乎不包含适用的标志。我发现“如何在列表视图中设置组标题不可选择? ”也没有有用的答案。

编辑: “不可点击”是指项目不应该被热跟踪并且不应该响应被点击。

0 投票
3 回答
1985 浏览

delphi - TAction.OnUpdate 事件是否会降低性能?

在Delphi XE7中,我使用这个技巧来自动启用或禁用一个工具栏按钮(“编辑ListView项目”),根据是否选择了ListView中的项目,以防止用户在没有ListView的情况下点击按钮选择的项目:

  • 将 TActionList 放在 VCL 表单上。
  • 在 ActionList 中创建一个动作actTest
  • 在窗体上放置一个 TButton。
  • 将操作分配actTest给按钮。
  • 在窗体上放置一个 TListView。
  • 在 ListView 中创建两个项目。
  • 如果OnUpdate发生actTest动作,请写:

    /li>

现在您可以看到按钮根据是否选择了 ListView 中的项目而启用或禁用,这与您是使用鼠标还是使用键盘还是以编程方式选择/取消选择项目无关。

但是,在 CodeSite Live Viewer 中,我可以看到该事件被连续且非常频繁地actTestUpdate触发,因此该语句被执行得非常频繁。actTest.Enabled := ListView1.SelCount > 0;

所以我的问题是:这会降低性能吗?如果是,是否还有其他技巧可以实现上述目的?

0 投票
0 回答
136 浏览

c++builder - 调用 DoDragDrop 后如何释放鼠标

我编写了一个包含 TListView ( m_ListView) 的演示。它显示了我在D:\驱动器上的文件。如果我将 TListItemm_ListView拖放到E:\驱动器上,则所选文件将被复制到E:\. 这很好用,但拖动结束时出现问题。

当我在鼠标悬停时进行拖放并释放左键时E:\,会出现如下图所示的阴影(文件已被复制!):

截屏

要执行另一个拖放操作,我必须再次单击我的 TListView。

我应该怎么做才能消除这种情况?

我尝试使用ReleaseCapture(),但这不起作用(或者我没有正确使用它)。

主要代码:

DropFiles()功能:

0 投票
0 回答
39 浏览

c++builder - OnExit 在点击 TListView 后被触发两次

在 TEdit 的 OnExit 事件中,如果编辑没有有效内容,我会进行一些验证并将焦点设置回编辑。当我尝试切换到其他编辑字段时,这工作正常。当我尝试进入 TListView 组件时,在调用 SetFocus() 后再次调用 OnExit 事件。

有没有人知道为什么在输入 TListView 时事件会被调用两次?

0 投票
1 回答
155 浏览

c++builder - 将图片设置为 BCB 中 TListColumn 的背景图片

我可以设置一个TListColumn的ImageIndex来在ListColumn的右边添加一张图片,显示为:

在此处输入图像描述

但是有没有办法为 TListColumn 设置背景图像?

或者以另一种方式,我怎样才能达到这样的效果(Windows 资源管理器): 在此处输入图像描述

如何在我的程序中显示小三角形?

0 投票
1 回答
279 浏览

delphi - 需要在 Windows 7 上的 Delphi 7 的 TListView 中进行透明选择

Delphi7默认无法做到这一点,但我希望有办法在一些帮助下做到这一点。我的图片显示了我想用我的 ListViews 做什么,透明的选择允许下面的颜色通过它显示,就像 TTreeView 所做的一样(并且做得很好![在此处输入图像描述][1] Delphi7 出于某种原因)。

该网站不允许我发布图片,因为这是我的第一篇文章。如果您查看 Windows(或文件)资源管理器右侧的列表视图,文件所在的位置,尤其是在详细信息视图中,在 Windows 7、Windows 8 上,您会看到选择栏有点透明。它不会破坏它下面的对象(文件和文件属性)的颜色。这就是我需要的。有趣的是,具有相同透明度的 let 侧的树视图在 Delphi 7 的树视图中自动可用,无需任何特殊更改。我认为这两个组件来自同一个 CommCtrl(或 ComCtrls)dll/单元,但列表视图不会在 Delphi7 中自动执行。那是我的问题。OwnerDrawn 不是我希望的答案。

0 投票
3 回答
14067 浏览

delphi - Delphi - 获取 TListView 中所选项目的当前索引

我在表单中有一个 TListView,我想知道所选项目的索引。我试图找到提供该信息的 TListView 的方法或属性,但我发现的唯一内容是lvClients.Selected它没有提供该项目的索引。

有人可以帮我找到如何在我的 TListView 中获取所选项目的索引吗?谢谢。

0 投票
1 回答
450 浏览

delphi - 使用记录时访问 TListItem.Data 会导致错误

我有一个TListView用于可视化和存储一些数据的程序。TListitem的数据属性填充了指向记录的指针,如下所示:

当我试图以某种方式检索这些数据时,我遇到了访问冲突错误,这对我来说完全是一个惊喜,因为一切看起来都是合法的,这里是检索代码:

AWatch传递给第一个函数的也存储在

因此可以使用其他方法访问