imageview支持可扩展的布局系统,内置支持单一,垂直和水平布局。负责设置布局的主要类是抽象类ImageViewerViewLayout类。
当从查看器中添加/删除项或更改它们的大小属性时,查看器将触发一个新的布局计算操作。这是从内部执行的UpdateTransform.此计算将调用视图布局实例的各种方法,以在所希望的方式在查看器表面上定位和调整项的大小,并计算用于滚动的总体视图大小。
imageview将始终有一个实例ImageViewerViewLayout派生类集ViewLayout.不能将此属性的值设置为零.
下面的讨论使用来自LEADTOOLS文档查看器的屏幕截图。文档查看器使用标准imageview使用标准视图布局。
LEADTOOLS有以下内置的视图布局:
这些物品是层层叠放的。控件在任何时候都只显示一个项目,这是由控件控制的imageview。ActiveItem.一个图像查看器与10项和ActiveItem设置为列表中的第一个(索引为0)将如下所示:
当ActiveItem设置为列表中的第三项(索引为4),相同的查看器将如下所示:
ImageViewerSingleViewLayout在单项模式下使用时,查看器也会使用。而当一个新的实例imageview使用默认构造函数创建的ImageViewerSingleViewLayout创建和设置ViewLayout.
这是单页模式下的LEADTOOLS文档视图:
请注意如何只查看单个页面。在这种情况下,主视图的滚动条不可见,因为所有页面边界都在视图内。
这些物品被堆叠在一起。多个项目可以在任何时候可见,并由当前项目的位置和大小以及视图滚动位置控制。ActiveItem不影响正在查看的项目。
这是垂直页面模式下的LEADTOOLS文档视图:
注意如何同时显示多个页面。视图滚动条反映文档的总大小,而不是单个页面的大小。
垂直视图布局包含ImageViewerVerticalViewLayout。列属性,该属性控制在移动到下一行之前水平显示多少项。在前面的屏幕截图中,文档查看器正在使用垂直布局列设置为1。因此,每行显示一个页面。下面是使用垂直视图布局的文档查看器列设置为2:
在这里,在移动到下一行之前,查看器将在每行中添加最多两项。滚动条的大小反映了这一点。
设置的值列到0将指示查看器在移动到下一行之前先查看具有尽可能多项的行(最少为1项)。这个值不是固定的,是根据视图大小动态计算的。调整查看器的大小将触发重新计算。此模式类似于Windows资源管理器的缩略图模式。
这些物品从左到右依次堆叠。多个项目可以在任何时候可见,并由当前项目的位置和大小以及视图滚动位置控制。ActiveItem不影响正在查看的项目。
这是水平页面模式下的LEADTOOLS文档视图:
注意如何同时显示多个页面。视图滚动条反映文档的总大小,而不是单个页面的大小。
水平视图布局包含ImageViewerHorizontalViewLayout。行属性,该属性控制在移动到下一列之前垂直显示多少项。在前面的屏幕截图中,文档查看器正在使用水平布局行设置为1。因此,在每一列中显示一个页面。设置的值行到0将指示查看器在移动到下一列之前先查看具有相同数量项的列(最少为1)。这个值不是固定的,是根据视图大小动态计算的。调整查看器的大小将触发重新计算。
查看器支持缩放方法,该方法可用于执行常见操作,如拟合视图以显示整个页面或当前页面的宽度或高度。
每个视图布局计算每个大小模式的当前值,以正确执行此操作。例如,下面是使用垂直布局的文档查看器列呼叫后= 1变焦与ControlSizeMode=.FitWidth:
注意查看器如何将单个页面的宽度作为计算的基础值。下面是使用双垂直布局的相同文档查看器(列= 2)和调用相同的Zoom with变焦与ControlSizeMode=.FitWidth操作:
现在,查看器将两个页面的宽度作为计算的基础值。
如果项的大小不同,则查看器将根据最大行宽和高计算视图大小。
当使用不同的项大小时,或者当行或列的项数小于最大项数时,则项必须在每个单元格中对齐。这是通过使用ItemHorizontalAlignment而且ItemVerticalAlignment的属性imageview.
这里是5个项目和垂直布局的图像查看器列设置为2。
注意,第三行只包含一项。并且项目在视图中向左对齐。这是因为的值ItemHorizontalAlignment设置为附近.
这是同一个观众ItemHorizontalAlignment设置为中心:
和远
类似地,ItemVerticalAlignment可用于确定项在单元格中的垂直对齐方式。
以及变焦方法如上所述。在使用多个项目时,可以通过以下几种方式快速完成需要的常用操作:
操作 | 描述 |
---|---|
GotoItem | 滚动到项目的左上角 |
GotoItemByIndex | 滚动到提供索引的项目的左上角 |
EnsureItemVisible | 确保项目在查看器中可见 |
EnsureItemVisibleByIndex | 确保指定索引处的项在查看器中可见 |
GetFirstVisibleItem | 返回当前可见的第一个项 |
GetFirstVisibleItemIndex | 返回当前第一个可见项的索引 |
Leadtools.Controls.ImageViewer.GetLastVisibleItem | 返回当前最后一个可见项 |
Leadtools.Controls.ImageViewer.GetLastVisibleItemIndex | 返回当前最后一个可见项的索引 |
GetLargestVisibleItem | 返回当前可见面积最大的项 |
GetLargestVisibleItemIndex | 返回当前可见面积最大的项的索引 |
Leadtools.Controls.ImageViewer.IsItemVisible | 获取一个值,该值指示指定的项或部件当前是否在查看器中可见 |
HitTestItem | 返回给定点下的项 |
HitTestItems | 返回与给定矩形区域相交的项 |
HitTestItemPart | 返回给定点下的项目部分 |
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网络查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送给技术支持!应该有人联系!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格,开始新的聊天。
所有代理目前都离线。
聊天时间:
星期一至星期五
美国东部时间上午8:30 -下午6点
如需与我们联系,请填写此表格,我们将通过电子邮件与您联系。