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

如果外部JScrollPane中有较小的one,如何滚动该one?

如果外部JScrollPane中有较小的one,想要滚动该one,可以通过以下步骤实现:

  1. 确保one组件已经添加到JScrollPane中,并且one的大小确实比JScrollPane小。
  2. 获取JScrollPane的视口(Viewport)对象,可以使用getViewport()方法。
  3. 获取one组件的位置,可以使用getLocation()方法。
  4. 使用视口的scrollRectToVisible()方法,将one组件的位置作为参数传入,以确保one组件可见。

下面是一个示例代码:

代码语言:txt
复制
JScrollPane scrollPane = new JScrollPane();
JComponent one = new JComponent(); // 假设one是一个较小的组件

// 将one组件添加到JScrollPane中
scrollPane.setViewportView(one);

// 获取JScrollPane的视口对象
JViewport viewport = scrollPane.getViewport();

// 获取one组件的位置
Point oneLocation = one.getLocation();

// 将one组件的位置作为参数,滚动视口使其可见
viewport.scrollRectToVisible(new Rectangle(oneLocation, one.getSize()));

这样,当外部JScrollPane中有较小的one时,就可以通过滚动视口的方式,使one组件可见。

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

相关·内容

JAVA学习Swing章节JPanel和JScrollPane面板简单学习

,这时 * 可以使用JScrollPane面板 * * 2:JScrollPane面板是带滚动面板,它也是一个面板,但是JScrollPane只能 * 放置一个组件,并且不可以使用布局管理器...* * 3:如果需要在JScrollPane面板中放置多个组件,需要将多个组件放置在JPanel面板上, * 然后将JPanel作为一个整体组件添加到JScrollPane组件上。...* * 4:从本实例可以得到在窗体中创建一个带滚动文字编辑器,首先需要初始化编辑器, * 并且在初始化时完成编译器大小指定,当创建带滚动面板时,将编译器加入面板中 * ,最后将带滚动编译器放置在容器中即可...()面板对象,并将文本域对象添加到面板中 JScrollPane sp=new JScrollPane(ta); //将该面板添加到容器中...container.add(sp); //设置容器外部特性 setTitle("带滚动文字编辑器");//设置窗口标题文字 setSize

1.9K90

Java Swing JTable

请注意,如果希望在独立视图中(在JScrollPane外部)使用JTable并希望显示标头,则可以使用getTableHeader()获取它并单独显示它。...源分发演示区域中“ TableExample”目录提供了一些JTable使用情况完整示例,涵盖了如何使用JTable提供从数据库获取数据可编辑视图以及如何修改显示中列。...添加表格到容器中有两种方式: 添加到普通中间容器中,此时添加jTable只是表格行内容,表头(jTable.getTableHeader())需要额外单独添加。...此添加方式适合表格行数确定,数据量较小,能一次性显示完表格; 添加到JScrollPane滚动容器中,此添加方式不需要额外添加表头,jTable添加到jScrollPane中后,表头自动添加到滚动容器顶部...创建带滚动表格基本步骤: 创建表格 JTable table = new JTable(…); 设置表格相关数据 // 设置滚动面板视口大小(超过大小行数据,需要拖动滚动条才能看到) table.setPreferredScrollableViewportSize

5K10
  • 超详细Java容器、面板及四大布局管理器应用讲解!

    因此JPanel面板使用一般是与布局管理器相结合JScrollPane面板 先来看一种在界面设计时常见问题:在一个较小界面中显示一个较大内容情况,对于这种情况,我们常用方法就是将较小容器设置为...JScrollPane面板,原因是因为JScrollPane面板是自带滚动,并且同时它也是一种容器,这也是在做相关开发时我们设置滚动条常用一种方法。...使用JScrollPane面板时需要注意以下两个问题: JScrollPane面板中只能布置一个控件, JScrollPane面板不能使用布局管理器 因此如果想要在JScrollPane面板中显示多个控件...面板中加入一个文本框,实现一个带有滚动文本框。...在默认情况下,组将在流布局管理器中都是以居中排列,当然排列顺序是可以改变, FlowLayout类中构造函数中有如下三种: Public FlowLayout(); Public FlowLayout

    2.7K10

    Java一分钟之-Swing组件:JTable, JTree, JTextArea

    Java Swing 提供了丰富组件库,其中JTable、JTree和JTextArea用于展示数据和用户输入。本文将深入浅出地介绍这些组件,常见问题,易错点以及如何避免,同时提供代码示例。 1....如果没有设置数据源,JTable将为空。 避免方法:使用DefaultTableModel或自定义模型设置数据源。 问题2:滚动面板缺失。...大表格可能超出窗口大小,需要添加JScrollPane。 避免方法:使用JScrollPane包裹JTable。 2. JTree JTree用于展示层次结构数据,如文件系统或组织结构。...(true); } } 常见问题及避免方法 问题1:未设置滚动面板。...如果文本过长,JTextArea可能超出窗口大小。 避免方法:使用JScrollPane包裹JTextArea。 问题2:未初始化文本。默认情况下,JTextArea为空。

    15810

    Kubernetes组件之kube-controller-manager

    RC中Pod模板就像一个模具,模具制造出来东西一旦离开模具,它们之间就再没关系了。一旦Pod被创建,无论模板如何变化,也不会影响到已经创建Pod。...通过改变RC中Pod模板来实现系统滚动升级。 2.2....流程如下 1、Controller Manager在启动时如果设置了–cluster-cidr参数,那么为每个没有设置Spec.PodCIDRNode节点生成一个CIDR地址,并用CIDR地址设置节点...如果监测到Service被删除,则删除和Service同名Endpoints对象; 如果监测到新Service被创建或修改,则根据Service信息获得相关Pod列表,然后创建或更新Service...Service Controller监听Service变化,如果是一个LoadBalancer类型Service,则确保外部云平台上对Service对应LoadBalancer实例被相应地创建、

    1.2K30

    用模型“想象”出来target来训练,可以提高分类效果!

    one-hot标签更好; 这个插件不需要任何外部知识,也仅仅在训练时候才需要,不会增加模型预测时时间,不改变原模型结构。...一些可能解决办法 LDL:既然one-hot不合理,那我们就使用更合理标签分布来训练嘛。比如下图所示: ? 如果我们能获取真实标签分布来训练,那多好啊。...最后,使用混淆分布来调整原来one-hot分布,从而得到一个更好标签分布。 设计出来模型结构如图: ? 这个结构分两部分,左边是一个Basic Predictor,就是各种我们常用分类模型。...针对不同数据集特征,我们可以使用不同α(比如数据集混淆程度大,可以使用较小α),另外,论文中我们还介绍了在使用较小α时候,可以使用early-stop策略来防止过拟合。...如果one-hot就是我们面对残酷现实,那么LCM则是想象出一个更加美好目标,让模型往更美好目标进发。曾经不知道在哪里看到这样一句话:“瞄准月亮,即便你没到达,你将置身星星之中。”

    68110

    抢购倒计时自定义控件实现与优化

    在海外应用中,由于需要适配各种语言,有些小语种文案较长,因此当倒计时和其他文案处于同一行展示时,需要充分考虑多语言适配,如何优雅地完成倒计时自适应显示是一个值得深思问题。...为进一步优化倒计时效果,我们为倒计时增加了数字滚动动画,如下图所示。倒计时功能必然会带来性能消耗,如何避免倒计时带来性能问题,本文也将给出相应解决方案。...最后,还需重写CountDownTimeronFinish()方法,触发listener接口里onFinish() 2.2.4 构建公有方法供外部使用 首先是设置倒计时监听事件: public...,数字相同位绘制新数字,数字不同位一起移动即可; 4、在移动数字时,需要将旧数字向上移动,移动距离是 0 至 负最大滚动距离;同时要将新数字向上移动,移动距离为最大滚动距离 至 0;其中最大滚动距离是数字滚动控件高度...情况重点是:需要判断出子view是否已经移出ListView中。 如果应用只需要兼容安卓7及以上,可以通过重写onDetachedFromWindow()方法,在方法体内进行取消倒计时操作。

    1.5K30

    如果你要学JS XIII】——实现放大镜效果、client&scroll属性、固定侧边栏

    1.如何实现放大镜效果思维整理:1.鼠标经过小图片盒子,黄色遮挡层和大图片盒子显示,离开隐藏2个盒子功能2.黄色遮挡层跟随鼠标功能。3.移动黄色遮挡层,大图片跟随移动功能。html,css代码<!...通过client系列 相关属性可以动态得到元素边框大小、元素大小等。...返回自身实际宽度,不含边框,返回数值不带单位element.scrollHeight 返回自身实际高度,不含边框,返回数值不带单位如果浏览器高(或宽)度不足以显示整个页面时,会自动出现滚动条...当滚动条向下滚动时,页面上面被隐藏 掉高度,我们就称为预面被卷去头部。滚动条在滚动时会触发onscroll事件。4.固定侧边栏<!...也是基于js而实现如果能给你带来帮助那还请用发财小手点个赞吧!

    46010

    【CSS】元素显示与隐藏 ( display 隐藏对象 | visibility 隐藏对象 | overflow 隐藏对象 )

    display: none 可以 隐藏元素 ; 如果想要 显示对象 , 为元素设置 display: block 即可 ; 2、display 显示元素代码示例 设置 display: block...可以显示元素 , 同时样式还可以将元素转为块元素 ; 代码示例 : <!...; visibility 设置属性值 visible , 表示元素是可见 ; visibility 设置属性值 hidden , 表示元素是隐藏 ; 2、visibility 显示对象代码示例...: visible : 子元素超出父容器部分仍然显示 ; hidden : 子元素超出父容器部分隐藏 ; scroll : 不管子元素是否超出父容器 , 都显示滚动条 ; auto : 如果子元素超出父容器显示滚动条..., 如果子元素没有超出父容器不显示滚动条 ; 效果参考 【CSS】清除浮动 ② ( 清除浮动 - 父级元素设置 overflow 样式 | overflow 属性样式效果 | 溢出隐藏效果 | 垂直进度条效果

    5.4K30

    CSS3学习(一)——基础学习

    样式编写到一个外部CSS文件中,然后通过link标签来引入外部CSS文件,外部样式表需要通过link标签进行引入,意味着只要想使用这些样式网页都可以对其进行引用,使样式可以在不同页面之间进行复用,...双线 简写:border简写属性,通过属性可以同时设置边框所有的相关样式,并且没有顺序要求。...则浏览器会自动调整margin-right值以使等式满足,这七个值中有三个值和设置为auto:width、margin-left、maring-right ->如果某个值为auto,则会自动调整为auto...(可以-x或-y) 属性来设置父元素如何处理溢出子元素  可选值:   visible:默认值子元素会从父元素中溢出,在父元素外部位置显示   hidden:溢出内容将会被裁剪不会显示   ...scroll:生成两个滚动条,通过滚动条来查看完整内容   auto:根据需要生成滚动条 行内元素盒模型 行内元素不支持设置宽度和高度  行内元素可以设置padding,但是垂直方向padding

    73820

    【动态规划背包问题】多维背包问题

    请你找出并返回 最大子集大小,子集中 最多 有 个 和 个 。 如果 所有元素也是 元素,集合 是集合 子集 。...其他满足题意但较小子集包括 {"0001","1"} 和 {"10","1","0"} 。{"111001"} 不满足题意,因为它含 4 个 1 ,大于 n 值 3 。...这道题如果抽象成「背包问题」的话,应该是: 每个字符串价值都是 (对答案贡献都是 ),选择成本是字符串中 数量和 数量。...整体复杂度为: 空间复杂度: 滚动数组 根据「状态转移」可知,更新某个物品状态时,只依赖于上一个物品状态。 因此,可以使用「滚动数组」方式进行空间优化。...在这个系列文章里面,除了讲解解题思路以外,还会尽可能给出最为简洁代码。如果涉及通解还会相应代码模板。

    1.2K30

    JavaSwing_8.1:焦点事件及其监听器 - FocusEvent、FocusListener

    当暂时丢失焦点组件另一个操作,比如释放Window或拖动滚动间接结果一时焦点变化事件发生。...如果未指定行为将导致id任何特定参数FocusEvent实例不是从范围FOCUS_FIRST到FOCUS_LAST 1 FocusListener 用于在组件上接收键盘焦点事件侦听器接口。...(如果你实现 FocusListener 接口,则必须定义接口中所有方法。此抽象类将所有这些方法都定义为 null,所以你只需针对所关心事件重写方法即可)。...使用扩展类创建一个侦听器对象,然后使用组件 addFocusListener 方法向组件注册监听器。...要熟悉基本焦点概念或获取有关焦点详细信息,请参阅如何使用焦点子系统。 本节说明如何通过在特定组件上注册FocusListener实例来获取焦点事件。

    4.7K10

    Java-GUI 编程之 JList、JComboBox实现列表框

    如果需要创建一个可以增加、删除列表项 JList 对象,则应该在创建 JLi st 时显式使用 DefaultListModel作为构造参数 。...addElement(E obj): 将指定元素添加到 ListModel 末尾 。...Object remove(int index): 删除 ListModel 中指定位置处元素 removeAllElements(): 删 除 ListModel 中所有元素,并将其大小设置为零...JList 和 JComboBox 采用都是简单字符串列表项, 实际上 , JList 和 JComboBox还可以支持图标列表项,如果在创建 JList 或 JComboBox 时传入图标数组,则创建...如果希望列表项是更复杂 组件,例如,希望像 QQ 程序那样每个列表项既有图标,此时需要使用ListCellRenderer接口实现类对象,自定义每个条目组件渲染过程: public interface

    3.4K11

    Python Tkinter Gui 常用组件介绍 基本使用

    Scrollbar 滚动条 对其支持组件(文本域、画布、列表框、文本框)提供滚动功能 Text 文本域 多行文字区域,可用来收集(或显示)用户输入文字(类似 HTML 中 textarea) ScrolledText...设置组件内部"左右"间距,单位为像素§,或者厘米©、英寸(i) ipady 设置组件内部"上下"间距,单位为像素§,或者厘米©、英寸(i) padx 设置组件外部"左右"间距 ,单位为像素...§,或者厘米©、英寸(i) pady 设置组件外部"上下"间距,单位为像素§,或者厘米©、英寸(i) sticky 属性用来设置控件位于单元格那个方位上,参数值和 anchor 相同,若不设置参数则控件在单元格内居中...§,或者厘米©、英寸(i) padx 设置组件外部"左右"间距 ,单位为像素§,或者厘米©、英寸(i) pady 设置组件外部"上下"间距,单位为像素§,或者厘米©、英寸(i) 3.place...,建议复制代码运行仔细观察一下有助于理解 示例使用了grid()网格布局,输入组件,标签组件,文件选择组件,单选框组件,复选框组件,按钮,滚动文本域,大部分都写了注释哈; import sys import

    2.7K20

    《Java 2 图形设计卷Ⅱ- SWING》第2章 Swing基本知识

    Swing提供了一个替代AWT重量滚动窗格轻量组件——JScrollPane组件。由于JScrollPane是轻量,所以任何添加到JScrollPane实例中重量组件都将在这个滚动窗格之上显示。...如果重量组件滚动超出了JScrollPane实例边框,则它就不能正确地显示了。  ...图2-9所示小应用程序说明了把一个重量组件添加到JScrollPane实例中并滚动重量组件使其超出滚动窗格边框情况。  ...这个小应用程序为滚动窗格设置了首选大小,并把滚动窗格添加到其内容窗格中。  图2-9所示组件效果是我们不想要。遗憾是,与弹出式菜单不同,JScrollPane没有能实例化为重量组件选项。...但是,幸运是,AWTScrollPane组件是一个重量滚动窗格,它和SwingJScrollPane几乎完全相同。

    2.4K20

    Java程序员如何快速理解Kubernetes

    参考链接: 如何成为一名优秀Java程序员 我们希望微服务是可复制,可替换工作节点,这样可以轻松进行升级或降级,同时无需任何停机时间,并花费最少代价管理。...我们希望军团中有不同类型工作角色,以便能够了解Kubernetes可以为我们做些什么。...我们可以为每个minion类型重复上面的配置,每次增加外部端口号以便使用不同端口,或者我们可以使用这个GitHub存储库,它还具有其他配置,可以在不停机情况下进行小型版本升级(如果我们使用Helm,...部分下创建更多特定类型minions:  一个小黄人倒下,另一个替补他位置  假设从浏览器点击快乐小黄人服务时得到:  如果杀死“happy-minion-58c9c46d67-j84s9”会发生什么...如果浏览Pod部分,您将看到Kubernetes创建了一个新Pod来代替您删除那个,以保证该部署中有两个节点。  Minion升级  我们还可以为小黄人进行滚动升级。

    32310

    Android下拉刷新完全解析,教你如何一分钟实现下拉刷新功能

    然后对ListViewtouch事件进行监听,如果当前ListView已经滚动到顶部并且手指还在向下拉的话,那就将下拉头显示出来,松手后进行刷新操作,并将下拉头隐藏。原理示意图如下: ?...ableToPull) { yDown = event.getRawY(); } // 如果首个元素上边缘,距离父布局值为0,就说明ListView滚动到了最顶部,此时应该允许下拉刷新...当ListView滚动到了最顶部时,如果手指还在向下拖动,就会改变下拉头偏移值,让下拉头显示出来,下拉距离设定为手指移动距离1/2,这样才会有拉力感觉。...更加深入理解请大家仔细去阅读RefreshableView中代码。 现在我们已经把下拉刷新所有功能都完成了,接下来就要看一看如何在项目中引入下拉刷新了。...这是一个非常好用功能,让我们不用再自己手动去记录和计算时间了,但是却存在一个问题。如果当前我们项目中有三个地方都使用到了下拉刷新功能,现在在一处进行了刷新,其它两处时间也都会跟着改变!

    5.4K110
    领券