首页
学习
活动
专区
圈层
工具
发布

Vcl控件详解_c++控件

该属性只有在ViewStyle为vsReport时才有效 SelCount:只读返回选择项目的个数 Selected:指出在该控件中选中的项目标注的列表视图项目 ShowColumnHeaders...:可在列表视图有焦点时获得用户输入的字符序列,列表视图添加字符串到查找字符串,并查找匹配的项 IsEditing:判断当前用户是否正在对项目进行操作 Scroll:可通过水平像素和垂直像素滚动列表视图的内容...该事件只有在OwnerData属性为True时才有效 OnDataHint:当列表视图的内容变化(如用户滚动列表视图)时发生 OnDataStateChange:当项目的范围改变状态时发生。...该事件只有在OwnerData属性为True时有效 OnDeletion:当列表视图中的一个项目被删除时触发 OnDrawItem:当绘制一个项目时触发 OnEdited:当编辑一个项目的Caption...OnInfoTip:当用户停止在列表视图中的一个项目上时触发 OnInsert:在列表视图中插入一新的项目发生 OnSelectItem:当选中项目时触发 THeaderControl

7.6K10

【Android】造轮子:轮播图

效果 思路 这里使用ViewPager来实现轮播的效果,但是ViewPager是滑动到最后一张时,是不能跳转到第一张的。...当从View4跳转到View5时,在代码中立刻将视图切换到View2,应为图片是一样的,所有在界面上看不到任何效果。 同理,当从View2跳转到View1时,在代码中将视图切换到View4。...后面有两个LinearLayout,第一个LinearLayout用来放指示器,在java代码中动态添加;第二个LinearLayout就用来显示Title了,当然,如果还需要显示的其他内容,可以在这个布局里面中添加...前添加一个半透明的黑色背景,防止文字和图片混在一起 ImageView backGround = new ImageView(context); backGround.setLayoutParams...,先在布局中添加了需要显示的图片,然后加了个半透明的图,防止显示时文字和图片中白色的部分重叠在一起,导致看不清文字。

2.2K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【愚公系列】《微信小程序与云开发从入门到实践》011-滑块容器组件

    一、滑块容器组件滑块容器组件常用于图片浏览器和滚动广告位等功能中,其内可以放置一组子组件,子组件会按照预设的方式进行自动布局,并支持自动或手动地进行切换。...同时,swiper-item组件也只允许放置在swiper组件内部。因此,在使用滑块组件时,自定义的内容视图实际上是放在swiper-item组件内的,swiper-item 组件的属性如表所示。...background-color: yellow; height: 100%; text-align: center; padding: auto;}运行代码,可以看到页面上已经展示出了一个支持自动水平滚动播放的滑块视图...滚动到最后一个内容时,下次会返回到第一个内容;设置为 true 时,滚动到最后一个内容后,下次会继续向后滚动到第一个内容,体验上衔接性更好 vertical 布尔值默认的滑块组件的滑动方向是水平方向的...,也可以设置要展示的内容位置,在设置时,会触发 bindchange 以及 bindtransition 的回调,要注意尽量不要在这些回调中修改组件的current值,以防止出现无限循环的问题。

    83610

    12.1版本中的全新数据交互控制和格式选项功能

    下面是如何使用更新后的Dataset,以及你可以如何利用这个函数更深入地了解你的数据的方法。 新的交互功能 我们已经向Dataset列标题上下文菜单添加了对你的数据进行排序和逆排序的选项: ?...)出现时,右击可以调出上下文菜单并选择一个排序项目: ? 隐藏和显示项目也在所有Dataset单元格的上下文菜单中,用于特定数据分解某部分的聚焦视图: ?...不需要滚动条或省略号的情况下可以展示出的项的最大数量 DatasetDisplayPanel 初始向下展开的位置 ScrollPosition 初始滚动的位置 在下面的部分中,我会解释这些项的基本函数...当Dataset有滚动条时,你可以用ScrollPosition指定初始滚动条的位置,可以给出初始竖直和水平位置: ?...每一项的颜色都根据其在“sex”这一项的内容进行判断: ? 整合 新的Dataset选项目的是帮助你更好地了解你的数据,并更有效地将其展现出来。下面我们会给出几个范例供你参考。

    2.3K30

    Android经典面试题之RecycleView 深度解析与面试题梳理

    **ViewHolder**:缓存了视图的引用,减少对 findViewById 的调用,提高性能。 **ItemDecoration**:用于在项之间添加间隔或者自定义装饰。...**ItemAnimator**:负责动画效果的播放,如添加、删除、移动项时的动画。 2....用户滚动 RecyclerView 时,LayoutManager 会计算哪些项应该显示在屏幕上,并决定哪些项可以被回收复用。...ViewHolder 确保了视图的复用,每个 ViewHolder 对应一个视图,当数据项被滑动出屏幕时,ViewHolder 会被缓存,当新的数据项需要显示时,可以重用这些 ViewHolder。...每个 ViewHolder 对应一个视图,当视图滑动出屏幕时,ViewHolder 会被缓存,以便复用。 3.

    1.1K10

    Flutter 视图布局(二)

    在 Flutter 视图布局(一)中文章结束时留下了一个问题,大家有尝试去实现吗? 如果大家认真看文章的话,我觉得这并不是很难的东西。...当然如果有配合 github 项目的代码来看的话,一定会发现我也已经将实现好的代码也更新上去了,可以作为实现参考。...在 MyApp 项目目录下有个 pubspec.yaml 文件,这个文件主要是 Flutter 用于管理外部依赖项。...english_words: ^3.1.0 在添加完新的依赖包后,当你进行保存时 VS Code 会自动进行依赖包的更新和下载,还是比较方便的,就不需要手动进行更新命令了。...cacheExtent 在视图可见区域之外有一个区域(即垂直是上下部分,水平是左右部分),用于缓存滚动即进入可见区域的子类。

    3.9K10

    已中招!Android 基础面试常常吊死在这几个问题上……

    一般这样可以用到,1、 BuildType 定义了如何构建模块,例如是否运行 ProGuard ;2、构建中包含哪些资源可以用到 BuildType ;3、 Gradle 为项目的产品风格和构建类型的每个可能组合创建一个构建变体...第三波 11、面试官:你是如何做到旋转屏幕时防止数据重新加载和重置的?...创建视图需要花费时间,因此您的滚动很可能不会很流畅。这就是为什么 RecyclerView 会利用以下事实:滚动时,新行出现在屏幕上,而旧行消失在屏幕上。...RecyclerView 在滚动时回收并重用单元格。 LayoutManager:在 ListView 中,唯一可用的视图类型是垂直ListView。...在 ListView 中, findViewById() 在滚动 ListView 期间,代码可能会频繁调用,这可能会降低性能。即使适配器返回膨胀视图以进行回收,仍然需要查找元素并进行更新。

    3.1K20

    WPF是什么_wpf documentviewer

    其它自定义View 三、结语 一、前言 项目中要用到一个数据分页栏,虽然自己没有实现过,但凭经验感觉它和ListBox/ListView有关。...GridView视图模式通过给列绑定数据字段和显示列标题来标识字段来显示数据项列表(说白了就是给一列数据加个标题header来说明这列数据是什么,然后将数据集合绑定到这列数据下面,一列数据就自动呈现出来了...与GridView进行用户交互 当你在程序中使用了GridView时,用户可以与GridView交互并修改其格式。例如,用户可以重新排序列(拖动表头使整列移动)、调整列的大小、选中表中的项和滚动内容。...当用户拖动表头时,会显示标题的浮动列以及一条显示插入位置的实线。...滚动查看内容 若GridView的大小不足以显示所有项,用户可以使用ScrollViewer控件提供的滚动条水平或垂直滚动。若所有内容一开始都可见,滚动条将被隐藏。

    7K20

    React 进阶 - 海量数据处理和其他细节

    虚拟列表,在长列表滚动过程中,只有视图区域显示的是真实 DOM ,滚动过程中,不断截取视图的有效区域,让人视觉上感觉列表是在滚动,达到无限滚动的效果。...防抖函数一般用于表单搜索,点击事件等场景,目的就是为了防止短时间内多次触发事件 节流函数一般为了降低函数执行的频率,比如滚动条滚动 # 按需引入 按需引入本质上是为项目瘦身,开发者在做 React 项目的时候...# 动态添加类名 第一种方式是通过 transition,animation 实现动画然后写在 class 类名里面,通过动态切换类名,达到动画的目的。...在 Vue.js 中有专门的 dep 做依赖收集,可以自动收集字符串模版的依赖项,只要没有引用的 data 数据, 通过 this.aaa = bbb ,在 Vue.js 中是不会更新渲染的。...但是在 React 中只要触发 setState 或 useState ,如果没有渲染控制的情况下,组件就会渲染,暴露一个问题就是,如果视图更新不依赖于当前 state ,那么这次渲染也就没有意义。

    2K10

    iOS 9人机界面指南(四):UI元素(上) - 腾讯ISUX

    书签(Bookmarks) 展示应用书签 搜索(Search) 展示搜索字段 添加(Add) 新建一个项 回收站(Trash) 删除当前项 归档(Organize) 将某个项移动到应用内其他位置...,比如另一个文件夹 回复(Reply) 将某个项发送或转发到另外一个位置 刷新(Refresh) 刷新当前内容(请尽量自动刷新,在必要时才使用刷新按钮) 播放(Play) 播放当前媒体内容 快进...标签栏位于屏幕底部,并应该保证在应用内任何位置都可用。标签栏是半透明的,展示图标和文字内容,每一项均保持等宽。当用户选中某个标签时,该标签呈现适当的高亮状态。...请注意,当搜索的视图控制器包含在导航控制器里面的时候——比如在邮件应用(Mail)中那样,当用户激活搜索时,搜索栏会自动上浮,平铺到原来导航栏的位置上。...集合视图: 可包含装饰视图,以从视觉上区分项的子集或者提供装饰性项目,例如自定义背景。 布局切换时支持自定义转场动画。(默认情况下,当用户导入、移动或者删除项的时候,会出现系统默认的动画效果。)

    15.8K51

    iOS新闻类App内容页技术探索

    添加删除模块、实现上拉下拉等操作简单。极大的提高了灵活性和复用的可能。 不足: 由于这种方式需要对SubView中的滚动视图进行计算、模块动态更新时整体布局也需手动刷新等,极大的提高的实现的复杂度。...在相应位置粘贴NativeView: 在进行以上两个步骤的同时,进行下载图片数据、NativeView创建、初始化、异步数据拉取等工作。在JS回调全部位置时,根据位置及ID,粘贴Native组件。...delegate的扩展分发,扩展handler单独处理子View的复用回收,这样就在无需继承的前提下,支持所有滚动视图中子View的复用回收。...综上,通过 ReusableNestingScrollview 只需将模块对应Model扩展增加协议,滚动视图扩展Delegate,就可实现任何滚动视图中子View的回收复用功能。 3....自动回收 & 内存管理 WebView及组件View实现自动回收逻辑,每次在申请新View时检测活动队列中View的SuperView是否为nil,是则自动回收防止内存泄露,同时增加View最大数量阈值

    3.7K00

    深度解析 Jetpack Compose 布局

    这是 View 系统中存在的问题,嵌套结构执行多遍测量过程可能会让叶子视图上的测量次数翻倍,Compose 的设计能够防止发生这种情况。...实际上,如果您对某个项目进行两次测量,Compose 会抛出异常: △ 重复测量某个项目时 Compose 会抛出异常 布局动画示例 由于具备更强的性能保证,Compose 提供了新的可能性,例如为布局添加动画...以 Jetsnack 应用中的自定义底部导航为例,在该设计中,如果某项目被选中,则显示标签;如果未被选中,则只显示图标。而且,设计还需要让项目的尺寸和位置根据当前选择状态执行动画。...由于滚动状态是从组合中读取的,任何更改都会导致重组,在重组时,还需要进行布局和绘制这两个后续阶段。 不过,我们不是要更改显示的内容,而是更改内容的位置。...您需要掌握一个原则: 只要可组合项或修饰符的参数可能频繁发生更改,都应当保持谨慎,因为这种情况可能导致过度组合。只有在更改显示内容时,才需要重组,更改显示位置或显示方式则不需要这么做。

    2.7K30

    最新iOS设计规范四|3大界面要素:视图(Views)

    因为集合没有强制执行严格的线性格式,所以它特别适合显示大小不同的项。 一般来说,集合非常展示基于图像的内容。可以选择性地呈现背景和其他装饰性的视图,用以区分项目的子集。 ? 集合支持交互性和动画。...默认情况下,你可以点按以选择、触摸并按住进行编辑,然后滑动进行滚动。 如有需要,还可以添加更多手势来执行自定义操作。在集合中,插入、删除或重新排序项目,都可以启用动画,并且还支持自定义动画。...自动关闭非模式弹出窗口时,请务必保存当前任务。通过点击屏幕非浮层区域部分,很容易误点而关闭非模态弹出窗口。仅当用户点击取消按钮时才取消当前的任务。 在屏幕适当的位置显示浮层。...除了警示框,浮层上不应显示任何视图。 如果可能的话,让用户在一次点击中关闭一个浮层,同时打开另一个浮层。避免额外的点击,尤其是需要在多个不同的项目栏中打开浮层时。 避免浮层太大。...但不要改变滚动的位置。相反,将内容添加到表的开头或结尾,让用户在准备好时滚动到它。一些APP在加载新数据时会显示一个加载器,并提供一个直接跳转到该数据的控件。

    13.7K31

    在 View 上使用挂起函数 | 实战

    本文是探索协程如何简化异步 UI 编程系列的第二篇。第一篇侧重理论分析,这一篇我们通过实践来说明如何解决实际问题。如果您希望回顾之前的内容,可以在这里找到——《在 View 上使用挂起函数》。...让我们学以致用,在实际应用中进行实践。 遇到的问题 我们有一个示例应用: Tivi,它可以展示 TV 节目的详细信息。关于节目信息,应用内罗列了每一季和每一集。...(view: View, episode: Episode) { // 通知 InboxRecyclerView 展开剧集项 // 向其传入需要展开的项目的 id recyclerView.expandItem...(episode.id) } InboxRecyclerView 的工作原理是通过我们提供的条目 ID,在 RecyclerView 中找到对应项,然后执行动画。...难以维护/更新 两个月以后,动画设计师要求在其中增加一个淡入淡出的过渡动画。您可能需要跟踪这部分过渡动画,查看每一个回调才能找到确切的位置触发新动画,之后您还要进行测试...

    2.4K30

    网页右键菜单的封装

    一、从“动手做”到“先画流程图” 一开始我在项目里直接复制粘贴现成的右键菜单插件,虽然功能能用,但样式和交互都不好看,也不符合项目的主题色和设计稿。我心想:“要不要自己封装一个?...二是“菜单渲染与定位”——保证在视口边缘不被裁剪,同时允许动态传入不同的菜单项。 三是“清理回收”——点击空白、滚轮滚动或窗口大小改变,都要及时关闭并卸载,避免冗余 DOM。..., onClick: ... }, { label: '粘贴', onClick: ... } ] } 然后在渲染时,给有 children 的 .ctx-menu__item 添加一个箭头图标...为了防止多次重复创建子菜单实例,我给父 ContextMenu 保留一个 this.submenu 引用,每次先销毁旧的再生成新的。...', items) 注册菜单配置 在需要右键的元素上添加 data-context-menu="xxx" 回头看,这个右键菜单的封装,从一开始的“Copy\&Paste”到最后的“多级子菜单、无障碍、跨浏览器兼容

    68220

    如何使用 CSS 设置和自定义水平和垂直滚动条

    在本节中,我们将按照以下步骤创建一个可滚动的侧边栏导航:a)创建带有导航项目的导航栏b)将导航栏样式设置为侧边栏c)将侧边栏位置设置为固定d)使用滚动条管理项目的溢出a)....将侧边栏位置设置为固定。在本节中,我们将专注于防止侧边栏在滚动主要内容时移动。我们希望将侧边栏样式设置为固定位置,以便主体可以自行滚动而不带上侧边栏。...下面的截图显示了侧边栏与正常内容流分开:固定溢出的侧边栏上面的侧边栏具有固定位置。页面的正文继续滚动,但侧边栏保持在用户的视图中。...从截图中可以看出,侧边栏的底部看起来不像设置在底部。这是因为内容比其容器的高度长。在下一节中,我们将学习如何防止导航项目列表显示在侧边栏之外。d)....另一方面,如果将overflow-y属性的值设置为auto,则浏览器只有在目标容器有超出内容时才会添加滚动条。

    6.3K00

    iOS开发之多图片无缝滚动组件封装与使用

    经常有园友会问"博主,有没有图片无限滚动的Demo呀?", 正儿八经的图片滚动的Demo我这儿还真没有,今天呢就封装一个可以在项目中直接使用的图片轮播。...切换到相应图片时,点击图片,会通过Block回调的方式给出该图片的Index, 在Demo中使用提示框给出Index, 当然在项目中拿到Index你可以做很多事情的,Index就是图片的Tag值,也就是标记着你点击的是那张图片...首次显示1的位置,然后滑动,等滑动到最后一个3时,无动画切换到第一个3的位置,然后在滚动。原理图如下,就可以按着下面的原理图来布局和实例化控件了。 ?   ...如果目前是最后一张图片则无动画的切换到ScrollView的第一张图片,因为第一张图片和最后一张图片是一样的,所以用户看不到这个无动画的切换,切换后,图片有开始从第一个开始滚动,所以就可以无限循环的滚动了...,那么如何让组件支持手动切换呢?

    2.2K90

    Android新组件RecyclerView介绍,其效率更好

    第三点:ItemAnimator ItemAnimator简单来说是会根据适配器上收到的相关通知去动画的显示组件的修改,添加和删除等。它会自动添加和移除item的动画。...它不关心如何将子View放在合适的位置,也不关心如何分割这些子View,更不关心每个子View各自的外观。更进一步来说就是RecyclerView它只负责回收和重用的工作,这也是它名字的由来。...缺点: 在RecyclerView中,没有一个onItemClickListener方法。所以目前在适配器中处理这样的事件比较好。如果想要从适配器上添加或移除条目,需要明确通知适配器。...LayoutManager:将每个条目的视图放置于适当的位置。 ItemDecoration:在每个条目的视图的周围或上面绘制一些装饰视图。...ItemAnimator:在条目被添加、移除或者重排序时添加动画效果。

    1.9K90

    软件测试|软件测试|超好用超简单的Python GUI库——tkinter(八)

    前言我们在日常使用各种桌面软件时,当我们想要搜索一个内容时,都会出现一个列表框,供我们选择,如下图:图片Tkinter提供了列表框(Listbox)控件来实现类似的功能。...y 在垂直坐标上最接近的项目的序号selection_set(first, last=None)设置参数 first 到 last 范围内(包含 first 和 last)选项为选中状态,使用 selection_includes...指定的颜色填充,没有边框3.如果设置了此选项,Listbox 的每一项会相应变大,被选中项为 "raised" 样式selectforeground指定当某个项目被选中的时候文本颜色,默认值由系统指定...insert(i,item)# 显示窗口win.mainloop()生成的窗口如下:图片除了上述使用 enumerate() 来实现选项插入的方法外,我们还可以使用 "end" 实现,它表示将选项插入到最后一个位置...', i) # 从最后一个位置开始加入值lb.insert(0, '诺伊尔') # 在第一个位置插入一段字符串lb.delete(4) # 删除第2个位置处的索引lb.pack()#主窗显示window.mainloop

    4K10
    领券