JScrollPane 自动跟进 自动到滚动到最底部
感谢大佬:https://blog.csdn.net/csdn_lqr/article/details/51068423
注:以下方法为网上摘抄
1 . JTable( 放在JScrollPane中 )中加入一行后, 然后让其获得焦点且滚动条自动下来!
int rowCount = table.getRowCount();
table.getSelectionModel().setSelectionInterval(rowCount-1 , rowCount- 1 );
Rectangle rect = table.getCellRect(rowCount-1 , 0 , true );
//table.repaint(); 若需要的话
//table.updateUI();若需要的话
table.scrollRectToVisible(rect);
注:table.scrollRectToVisible(rect)必须在table.repaint()和 table.updateUI()(如果有的话)之后,不然有时滚动条不能滚动到最底下。
2 . 直接操纵JScrollPane中的JScrollBar
JScrollPane sPane = new JScrollPane(table);
JScrollBar sBar = sPane.getVerticalScrollBar(); //得到了该JScrollBar
具体操作:
sBar.setValue(int value); //设置一个具体位置,value为具体的位置
int value = sBar.getValue(); //得到JScrollBar现在的位置
sBar.getMaximum(); //得到允许的最大值
sBar.getMinimum(); //得到允许的最小值
3 . JTextArea+JScrollPane滚动条自动在最下边
(1 ) 在JTextArea插入最后一条消息之后,使用selectAll()将光标强制移动到JTextArea的最后,实现滚动条的自动滚动。(Aviva中采用的方式)
(2 ) 在JTextArea插入最后一条消息之后,使用(JTextArea)recvArea.setCaretPosition(recvArea.getText().length()),将光标移到最后,实现滚动条的自动滚动。
(3 ) 在JTextArea加载了自动滚动条JScroll之后,将JTextArea加入到JScrolPanel的ViewPort中: (有一些Bug,使得图像有点闪烁)
recvScrollPane.getViewport().add(recvArea, null );
然后在JTextArea插入最后一条新消息之后,将滚动条的Viewport重新设置到最底端的位置:
int height = 20 ;
Point p = new Point();
p.setLocation(0 , recvArea.getLineCount() * height);
recvScrollPane.getViewport().setViewPosition(p);
4 . 设置JScrollPane中的JTextArea自动到底部
int height= 10 ;
Point p = new Point();
p.setLocation(0 , this .jTextArea1.getLineCount()*height);
this .jScrollPane1.getViewport().setViewPosition(p);
文章转自:http://smallsmile.iteye.com/blog/875030
补充:https://blog.csdn.net/weixin_43670802/article/details/90731212
JScrollPane 自动跟进 自动到滚动到最底部的更多相关文章
- 当滚动条滚动到页面底部自动加载增加内容的js代码
这篇文章主要介绍了如何使用javscript实现滚动条滚动到页面底部自动加载增加页面内容,需要的朋友可以参考下..1,注册页面滚动事件,window.onscroll = function(){ }; ...
- vue.js学习之 如何在better-scroll加载完成后,自动滚动到最底部
首先我们需要使用scrollTo这个方法: scrollTo(x, y, time, easing) 参数: {Number} x 横轴坐标(单位 px) {Number} y 纵轴坐标(单位 px) ...
- Tomcat 设置自动编译,自动发布,自动部署
Tomcat服务器 具有一个常用的功能: 即自动编译,自动发布,自动部署功能. 问题: 当我们第一次发布程序以后,我们增删改Servelt,Java,.xml等文件,都必须重启Tomcat,如果项目巨 ...
- GitHub + circleCI 自动构建/自动部署 应用
GitHub + circleCI 自动构建/自动部署, 这里略过了单元测试,以部署 laravel 应用为例子 比起 gitlab + ansible + genkins 操作起来节省了很多硬件资源 ...
- KETTLE4个工作中有用的复杂实例--1、数据定时自动(自动抽取)同步作业
今天呕心沥血花了8个小时给大家带来kettle工作中最常见的四种复杂实例,90%的项目用到这4种实例都可以解决. 4种实例种还有2种通用kettle工具,使用这两种通用工具实例,可以直接修改相应的配置 ...
- 微信小程序——<scroll-view>滚动到最底部
最近在做个直播间,有个这样的需要,就是进入到页面,<scroll-view>需要滚动到最底部,并且发送消息之后自动的滚动到底部. 开始想着计算里面内容的高度,然后通过设置 scroll-t ...
- Android--监听ListView滚动到最底部
监听ListView滚动到最底部使用 onScrollStateChanged(AbsListView view, int scrollState) 方法,代码大致如下: // 监听listview滚 ...
- 使用JavascriptExecutor将页面滚动到最底部
使用如下代码,将页面滚动到最底部 @Test(enabled = true) public void scroll(){ String jsStr="window.scrollTo(0,do ...
- javascript&jquery 判断滚动到页面底部
js 判断滚动到页面底部 CreateTime--2018年4月14日10:13:07 Author:Marydon 1.使用场景: 滚动到屏幕底部,触发加载分页数据请求(qq空间,手机端) 2. ...
随机推荐
- IM2603 Type-C扩展坞电源管理 IC
IM2603 概述 用于带有集成降压转换器的 Type-C 外围应用的电源管理 IC IM2603 是一款主要用于 Type-C 外围应用的电源管理 IC. 它集成了一个带有内置高侧 MOSFET 的 ...
- Kerberos打开debug日志
在JVM的启动参数中加入如下配置,打开kerberos的debug开关: -Dsun.security.krb5.debug=true JVM启动后,kerberos的相关日志会打印到控制台中, 因为 ...
- Sentry 企业级数据安全解决方案 - Relay 运行模式
内容整理自官方开发文档 Relay 可以在几种主要模式之一下运行,如果您正在配置 Relay server 而不是使用默认设置,那么事先了解这些模式至关重要. 模式存储在配置文件中,该文件包含 rel ...
- Visual Studio Code常用插件(持续更新)
1.open in browser:使用快捷键在浏览器中打开html页面 在默认浏览器中打开html页面是Alt+B:在其他浏览器中显示是Shift+Alt+B:也可以右键单击html文件,在弹出的窗 ...
- 如何在 CentOS 上安装 dos2unix 和 unix2dos 命令
yum install -y dos2unix 注意:以上安装包既包含 dos2unix 命令,又包含 unix2dos 命令.
- java 多态 总结
1.前言 引用教科书解释: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 通俗来说: 总结:多态的抽象类与接口有点相似: 父类不需要具体实现方 ...
- redis 重启服务丢失 密码设置 现象 与 解决过程
1. 前言 今天开电脑,开启redis服务后,项目使用redis的时候提示 不能找到 redisPools,并提示密码错误, 然后我用cmd打开却可以使用,真是奇了怪了!!! 2.使用现象: (1)c ...
- 灵雀云开源网络插件Kube-OVN 1.4.0 版发布!支持跨集群容器网络、NetworkPolicy 日志
从 1.4 开始 Kube-OVN 支持将多个 Kubernetes 集群容器网络打通,不同集群之间的 Pod 可以通过 Pod IP 直接互相通信.本版本还支持 ACL 日志,可以记录因 Netwo ...
- 微信小程序使用Websocket
/** 初始化websocket stomp文档 http://jmesnil.net/stomp-websocket/doc/*/initSocket: function () {var that ...
- Linux系统下,Redis的安装与启动
1.安装Redis之前,我们先介绍下Redis: (1)Redis是什么?都有哪些特点? 概念:Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键 ...