java - 使用插入符号无法正确滚动文本区域
问题描述
我使用 JTextArea 进行简单聊天程序的聊天,并添加了一个插入符号,以便在将文本附加到它时自动滚动。这引发了当聊天被大量使用时用户无法滚动的问题。
我已经尝试过查看插入符号的选项,并查看了滚动窗格选项,但是当用户滚动时没有向下滚动。
我打算能够允许用户滚动但不会因为有人发送消息而立即向下滚动。理想的情况是它像 Discord 一样工作,只有当用户一直向下滚动或类似的东西时它才会向下滚动。
解决方案
理想的情况是它像 Discord 一样工作,只有当用户一直向下滚动或类似的东西时它才会向下滚动。
查看智能滚动。它在滚动条上添加一个AdjustmentListener
来控制滚动:
当滚动条位于底部时,它将继续自动滚动。
当它不在底部时,它不会滚动。用户需要滚动到底部才能重新激活自动滚动。
推荐阅读
- javascript - 如何构建表单以允许用户在 Nuxt/Vue 应用程序中创建动态属性?
- javascript - 如何改变json结构
- python - C#读取二进制如何在python中做
- r - 每个类别的输出百分位数
- wordpress - 如何在WordPress中的帖子标题上添加标题
- reactjs - setState 增加所有实例的点赞数。如何增加类组件中每条记录的点赞数?
- python - zip python 函数是否能够使用整个矩阵作为索引?
- reactjs - setState 如何更新 const 变量?(在 ReactJs 中)
- kubernetes - 无法使用 istio 公开 gRPC 服务器
- react-native - react-native-track-player 逻辑有助于在后台模式下播放音频