首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在TVertScrollBox中设置在TListView中选择的项的ViewportPostion

TVertScrollBox是Delphi VCL中的一个组件,它用于垂直滚动显示其子控件。TListView是一个列表视图控件,用于显示列表数据。

要在TVertScrollBox中设置在TListView中选择的项的ViewportPostion,可以按照以下步骤进行操作:

  1. 确定TVertScrollBox和TListView的名称,以便在代码中引用它们。
  2. 获取TListView中当前选中的项的索引。可以使用TListView的Selected属性来获取当前选中项的索引。如果只允许选择一项,可以使用TListView的ItemIndex属性来获取选中项的索引。
  3. 计算选中项在TVertScrollBox中的位置。TVertScrollBox具有一个名为ViewportPosition的属性,它指定了其子控件在滚动框中的可见区域。根据选中项的索引,可以计算出该项的位置信息。
  4. 设置TVertScrollBox的ViewportPosition属性。将计算得到的位置信息设置给TVertScrollBox的ViewportPosition属性,以便将选中项滚动到可见区域。

下面是一个示例代码,展示了如何在TVertScrollBox中设置在TListView中选择的项的ViewportPosition:

代码语言:txt
复制
procedure ScrollToSelectedListItem;
var
  SelectedIndex: Integer;
  ListItem: TListItem;
  ItemTop: Integer;
begin
  // 1. 确定TVertScrollBox和TListView的名称
  // 以此示例代码为例,假设TVertScrollBox名为VertScrollBox1,TListView名为ListView1

  // 2. 获取当前选中项的索引
  SelectedIndex := ListView1.ItemIndex;

  // 3. 计算选中项的位置
  if (SelectedIndex >= 0) and (SelectedIndex < ListView1.Items.Count) then
  begin
    ListItem := ListView1.Items[SelectedIndex];
    ItemTop := ListItem.Top;
  end
  else
  begin
    // 如果没有选中项,可以在此设置默认位置
    ItemTop := 0;
  end;

  // 4. 设置TVertScrollBox的ViewportPosition属性
  VertScrollBox1.ViewportPosition := Point(0, ItemTop);
end;

上述代码通过ScrollToSelectedListItem过程来实现在TVertScrollBox中滚动到TListView中选中项的位置。你可以在需要的时候调用这个过程来实现滚动效果。

请注意,腾讯云没有与Delphi VCL直接相关的云计算产品。因此,在这个特定的问题中,不需要提供任何特定的腾讯云产品或链接。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Flutter设置更好Logging指南

    今天,我们将研究可以极大减少应用程序调试时间任务之一。一旦您习惯了应用程序以某种方式运行日志,您将很快能够注意到为什么某些东西不起作用。...设置 将记录器包添加到您项目中 logger: ^0.6.0 复制代码 用法 要使用记录器,您可以创建一个新记录器并使用其中一个方法调用进行记录。...老实说,我唯一喜欢是每个日志颜色,前面有表情符号。我喜欢使用可视化队列来帮助我更快地调试。正如我之前提到,在给定特定场景情况下,您开始了解应用程序日志流,而可视化队列将对此提供更多帮助。...Logger getLogger(String className) { return Logger(printer: SimpleLogPrinter(className)); } 复制代码 现在在你代码你所做就是这个...final log = getLogger('PostService'); 复制代码 最后要做设置日志记录级别,以便您不会一直看到所有日志。主文件设置应用程序运行之前级别。

    1.8K00

    bios设置关闭软驱方法

    bios设置是电脑最基本设置之一,它是计算机内主板上一个ROM芯片上程序,主要功能是为计算机提供最直接硬件设置和控制。...很多人对于BIOS设置并不是很了解,更不要说去怎么设置了,接下来想要介绍就是关于bios设置如何关闭软驱,下面就来看看操作方法吧!...1.首先需要进入到电脑bios设置界面中去,重启电脑,然后电脑启动时候直接按下键盘删过del键即可进入到bios设置界面。...2.在出现bios菜单,利用键盘删过方向键进行操作,选择菜单standard coms features并单击回车,之后选择打开界面到Drive A,再次单击回车,接下来选择“NONE”(...不过根据以上bios设置关闭软驱方法设置完成之后,务必要记得按下键盘上F10保存设置哦。

    4.5K20

    48%Kubernetes用户工具选择挣扎

    Spectro Cloud 新调查显示,平台工程似乎缓解了在生产中使用 Kubernetes 遇到一些痛点。... Spectro Cloud 一份 新报告 接受调查近一半 Kubernetes 用户表示,他们选择和验证要在生产环境中使用基础设施组件时遇到了问题。...主要原因:Kubernetes 成熟度。 根据调查参与者回答,对于组织来说,选择实在太多了。新报告,48% 的人表示,他们发现很难从 广泛云原生生态系统 决定使用哪些堆栈组件。...采用平台工程用户遇到问题较少 平台工程 已成为 Kubernetes 上运行分布式系统时解决复杂性过高和工具选择过多问题解决方案。...采用平台工程 70% 组织,不到一半的人强烈认为它已被完全采用。

    7010

    良心教程 | 如何在Typora设置免费图床

    设置好之后,写一篇教程,记录一下。 ❞ 「秀技能」 ❝今天同事发给我一个md文件,一往昔,图片没有显示出来,我说又到了我安利给你图床时候了,「免费」,「快速」,「粘贴后自动上传」,这三点不香吗。...这样,Typora书写,markdown nice渲染,然后复制到知乎和公众号上,非常流畅,多年梦想终于实现了。闭环感觉,别提多爽了,哈哈 ❞ 1....无论是免费图库,还是将项目放上面,还是将电子书放上面,还是将博客放上面,都非常方便。后面我介绍如何在上面使用bookdown写书。 ❞ 2....新建gitee项目 ❝飞哥注:这里主要是设置秘钥,然后copy到PicGo,就可以自动关联了。 ❞ 点击个人头像,点击设置: ?...❝飞哥注:「注意,这里要选择上传图片,然后勾选前两个,就会把粘贴图片或者本地图片,自动上传到Gitee项目上!」 ❞ ? 最后点击「验证图片选项」 ? 「搞定!」 8.

    6.1K10

    负二分布差异分析应用

    无论是DESeq还是edgeR, 文章中都会提到是基于负二分布进行差异分析。为什么要要基于负二分布呢?...从统计学角度出发,进行差异分析肯定会需要假设检验,通常对于分布已知数据,运用参数检验结果假阳性率会更低。转录组数据,raw count值符合什么样分布呢?...count值本质是reads数目,是一个非零整数,而且是离散,其分布肯定也是离散型分布。对于转录组数据,学术界常用分布包括泊松分布和负二分布两种。...通过计算所有基因均值和方差,可以绘制如下图片 ? 横坐标为基因在所有样本均值,纵坐标为基因在所有样本方差,直线斜率为1,代表泊松分布均值和方差分布。...正是由于真实数据与泊松分布之间overdispersion, 才会选择负二分布作为总体分布。 ·end· —如果喜欢,快分享给你朋友们吧—

    2.1K10

    __init__设置对象父类

    1、问题背景Python,可以为对象设置一个父类,从而实现继承。但是,如果想要在实例化对象时动态地指定父类,则会出现问题。...例如,以下代码试图实例化Circle对象时,将它父类设置为Red或Blue:class Red(object): def x(self): print('#F00')class...(parent=Blue)blue_square = Square(parent=Blue)但是,这段代码会报错,因为Python,对象父类只能在类定义时指定,不能在实例化对象时动态设置。...类工厂,可以根据传入参数来决定创建哪个类。...依赖注入是一种设计模式,它可以将对象依赖关系从对象本身解耦出来。这样,就可以实例化对象时动态地注入它依赖关系。

    10210

    未知大小父元素设置居中

    当提到web设计居中元素时。关于被居中元素和它父元素信息,你知道越多就越容易设置。那么假如当你不知道任何信息?居中也是可设置。...以下这些方法不太全面,现做补充。 1) 待居中元素外 包裹table-cell,设置table-cell只是让table-cell元素table-cell居中。...2)table添加tr,td前要先添加tbody。 ---- 困难:不知道子元素宽高 当你不知道待居中子元素尺寸时,设置子元素居中就变得困难了。 ?...如果在父元素设置ghost元素高和父元素高相同,接着我们设置ghost元素和待居中子元素 vertical-align:middle,那么我们可以得到同样效果。 ?...最好做法是父元素设置font-size:0 并在子元素设置一个合理font-size。

    4K20

    何在 React Select 标签上设置占位符?

    React , 标签是用于创建下拉选择组件。某些情况下,我们希望选择添加一个占位符,以提醒用户选择合适选项。...本文将详细介绍如何在 React 标签上设置占位符,并提供示例代码帮助你理解和应用这个功能。...使用 disabled 属性一种常用方法是使用 disabled 属性来模拟占位符。通过将一个默认选项设置为禁用状态,我们可以选择显示一个占位符,并阻止用户选择该选项。...注意事项需要注意以下几点:通过设置一个禁用占位符选项,我们可以选择显示占位符文本,并阻止用户选择该选项。处理选择值时,需要使用事件处理函数来更新状态。...结论本文详细介绍了 React 如何设置 标签占位符。

    3.1K30

    iis如何设置站点编码格式?

    一、环境:win7,iis6.0 二、步骤        打开iis,选择一个站点,右侧asp.net区域里,找到‘.NET全球化’。   双击打开后。   ...分别选择‘请求’,‘文件’,响应‘,’响应头‘编码格式。按照站点所需情况选择gb2312或utf-8。一般要保持一致。   然后点击右上角‘应用’按钮。保存修改。配置完成。   ...配置保存后,iis站点跟目录下,也就是物理路径指向文件夹下,会新建或修改web-config文件。   打开文件,可看到刚才设置内容。   刚才是视图化设置。...我们也可以直接在站点下新建一个web-config文件,增加如果上图中内容,保存即可。 三、完成        再到.net全球化设置,可以看到,设置已经修改了。

    6.9K11

    织梦 dedecms 自定义表单设置必填方法

    一般制作反馈表单都会设置有必填,比如姓名、电话等,但是默认 dedecms 自定义表单却没有必填设置,如果要设置织梦自定义表单必填,需要进行额外修改!...="post">  4、在这行代码下面,添加代码: 注意这行代码要修改下,根据你表单所需要设置必填...,例如设置“姓名”、“邮箱”为必填。...="name,email" />  5、保存后,必填设置完成,当用户提交表单时间,系统检查到必填没有输入内容,就会提示“带*号为必填内容,请正确填写”。...="complain"if($('#name').val()==""){$('#name').focus();        //#name为要验证表单 ID,想让用户名不能为空,在后台用户名数据字段名设为

    3.5K20

    使用VBA自动选择列表框第一

    标签:VBA,列表框,用户界面 有时候,可能你想自动选择列表框第一或者最后一。例如,当选择列表框所在工作表时,列表框自动选择第一,或者选择最后一。这都可以使用简单VBA代码轻易实现。...ListIndex = i Next i End Sub Private Sub Worksheet_Activate() CommandButton1_Click End Sub 第一个过程单击命令按钮后选择列表框第一...,第二个过程单击命令按钮后选择列表框最后一。...而Activate事件,当该工作表成为当前工作表时,自动执行相应过程,从而选择列表框第一。 这些过程是如何工作呢?它们是计算列表框中所有列表项数前提下工作。...列表框中共有7,Step -1告诉循环每次循环迭代从i减少1。 对于第二个过程,循环内调用相反过程。从顶部开始,向下直到底部,然后停止。

    2.3K40

    Oracle 23c 宽表设置

    Oracle 23c ,数据库表或视图中允许最大列数已增加到 4096。此功能允许您构建可以单个表存储超过之前 1000 列限制属性应用程序。...某些应用程序(例如机器学习和流式 IoT 应用程序工作负载)可能需要使用包含超过 1000 列非规范化表。 您现在可以单行存储大量属性,这对于某些应用程序来说可以简化应用程序设计和实现。...通过此设置,数据库表或视图中允许最大列数为 4096。 COMPATIBLE 初始化参数必须设置为 23.0.0.0 或更高才能设置 MAX_COLUMNS = EXTENDED。...要禁用宽表,请将 MAX_COLUMNS 参数设置为 STANDARD。通过此设置,数据库表或视图中允许最大列数为 1000。...但是,仅当数据库所有表和视图包含 1000 或更少列时,才可以将 MAX_COLUMNS 值从 EXTENDED 更改为 STANDARD。

    25720

    pytorch安装、环境搭建及pycharm设置

    pytorch安装、环境搭建及pycharm设置 这两天同学问我pytorch安装,因为自己已经安装好了,但是好像又有点遗忘,之前也是花了很大功夫才弄明白,所以整理比较详细。...原因是我并没有把python安装在本机,而是下载了Anaconda Navigator,它是Anaconda发行包包含桌面图形界面,可以用来方便地启动应用、方便管理conda包、环境和频道,不需要使用命令行命令...它自带python,只需官网选择与自己设备匹配版本安装即可。 下载好后,打开应用——base(root)——Open Terminal——输入python验证 就会出现版本信息了。...可以看到我是9.1达不到9.2,所以我选择了NONE,然后把生成命令: conda install pytorch torchvision cpuonly -c pytorch 复制下来,刚才终端运行...三、pytorchpycharm设置 实际上anaconda中有自带编译器,Jupyter notebook和Spyter,但是为了项目更好管理,也可以选择下载pycharm。

    3.5K40
    领券