问题标签 [tvirtualstringtree]
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.
delphi - TVirtualStringTree 搜索结果高亮
我想根据搜索条件突出显示 VirtualStringTree 节点中的文本,例如下面的示例:
请问有什么建议吗?
delphi - VirtualStringTree:搜索类型不是字符串的文本
我想实现一个搜索过程 aVirtualStringTree
并且我想通过将搜索文本与来自节点而不是来自指针(例如Data^.Column0
)的文本进行比较来做到这一点,因为这并不总是 as String
。
请帮助我提出从节点取回文本的建议。
为了更好地理解,请参见下面的代码(我调整了 Lazarus 的示例)
delphi - TVirtualStringTree - 可变行高优化
在我们的应用程序中,我正在从 TStringGrid 移动到 TVirtualStringTree 组件。正在显示大量数据(最多 50000 行和 5 列)。一列包含一行或多行文本。我设法在 stringgrid 中使用'DrawCell'以最佳性能实现多行功能:即时重绘所有行(调整大小时)和无阻碍地滚动(我在内存中有一个行高列表,将在需要重绘时更新) .
将此多行功能转移到 VirtualStringTree 的性能不如 stringgrid 替代方案。我尝试了许多实现,但还没有成功。这在 VirtualStringTree 安装包的 Demo 应用中很容易重现:
- 在“MultilineDemo”表单中,将 VirtualStringTree 的“rootNodeCount”设置为 10.000。
- 运行演示时,选择“根据节点文本自动调整节点高度”。
初始重绘/重绘会占用大量 CPU 时间。每次调整大小时,跳到顶部/底部会导致相同的现象,甚至导致“堆栈溢出”异常(但这是另一个问题......)。'OnMeasureItem' 方法被称为太多,我看到它的方式(即使在'MouseMove' 事件上)。
有没有人遇到过这个问题并设法找到解决方案?
delphi - 在同一个 TVirtualStringTree 中加载不同的数据
在我的应用程序中,我在主窗体上tc_main
有TTabControl
4 个选项卡和一个vt_main
asTVirtualStringTree
停留在它上面。取决于选择的选项卡vt_main
,里面可能有不同的标题和数据。对于每个选项卡,我定义了一个不同的数据处理程序。
现在的问题是如何vt_main
通过维护来自处理程序的数据在选项卡和刷新视图之间切换,而无需从 sql 重新加载数据。
在我尝试更新标头配置的那一刻,我得到了访问冲突。
我会放一些代码。我希望你明白这一点。
这是绘制/重绘 VT 标头程序
delphi - 如何设置 VirtualStringTree 标头的颜色?
VirtualStringTree 标头具有“背景”属性,但将其设置为不同的颜色不会改变颜色。我怀疑树是使用 Windows 主题呈现的。
如何设置颜色?
delphi - 如何将 TObject 添加到 TVirtualStringTree.Root 节点的 PVirtualNode.Data
那是我的问题。
如何将对象放入树的根节点?我知道 addChild 函数,但它适用于根节点的子节点。我需要将数据放入根节点。
c++ - TVirtualStringGrid CopyToClipboard 问题 Embarcadero Seattle C++
之前调用 后VirtualStringGrid -> CopyToClipBoard
,我可以将网格粘贴为记事本中的选项卡式文本,或者在粘贴到 Excel 或 Outlook 时作为完全格式化的网格(标题、颜色和边框)。
但是,自从我使用 VirtualTreeView V6.2 从 Embarcadero XE8 迁移到 RAD Seattle 后,我遇到了问题CopyToClipboard
:如果目标应用程序是某种文本编辑器,我只能粘贴为文本。粘贴到任何可以接受 RTF 或 html 的“丰富”应用程序都会导致错误。
我试图调用ContentToXXX
方法(见下面的代码)文本导出正常。例如,HTML 已导出,但生成的Data2Export
字符串包含 html 页面上的整个代码,并且无法粘贴到 Outlook。任何调用都会ContentToRTF
导致崩溃。
我用谷歌搜索了这类问题,但没有发现任何相关的东西。
关于如何解决或解决此问题的任何想法?
代码有问题吗?
PD:开发平台是Win8和Win10,VirtualStringTree ClipboardFormats都设置为true。
multithreading - 在 TVirtualStringTree 中显示文件系统树数据
我有这样的文件系统对象的线程安全类:
有线程,它扫描文件系统并填充它。主窗体上有 Timer,它从此类接收数据以显示在 TVirtualStringTree 中。
在 TVirtualStringTree 中显示此类数据而不会丢失额外内存以在节点中存储数据副本的最佳方法是哪种?
更新:好的,我现在拥有的。
现在我的 TVirtualStringTree 内存不足 :( 我的错误在哪里?