http://hi.baidu.com/ofbase/blog/item/74f826e9ea7db23eb90e2d03.html
在JScrollPane(JTextArea)的JTextArea中增加内容,如果通过界面按钮可以直接加入,并且达到如题之效果,但如果用程序加入内容的时候,则不行。
测试例程如下:
import java.awt.AWTEvent;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
public class ScrollBottom extends JFrame{
private JTextArea ta = new JTextArea();
private Timer timer = new Timer();
public ScrollBottom(){
super();
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
init();
}
private void init(){
setBounds(0, 0, 300, 150);
final JScrollPane sp = new JScrollPane(ta);
getContentPane().add(sp, "Center");
ta.setText("Start.....");
TimerTask task = new TimerTask(){
public void run(){
ta.append("Time: " + (System.currentTimeMillis() / 1000));
scrollAndSetCursor();
}
};
timer.schedule(task, 0, 1000);
}
/** 该方法用于实现滚动以及光标相关效果 */
public void scrollAndSetCursor(){
// ta.requestFocus();
ta.setSelectionStart(ta.getText().length());
}
protected void processWindowEvent(WindowEvent e){
super.processWindowEvent(e);
if(e.getID() == WindowEvent.WINDOW_CLOSING)
System.exit(0);
}
public static void main(String[] args){
ScrollBottom scroll = new ScrollBottom();
scroll.setVisible(true);
}
}
分享到:
相关推荐
`swing之滚动条下拉加载数据源码`这个标题暗示了我们将在 Swing 应用程序中实现一个功能,即当用户滚动到底部时自动加载更多数据。这种机制常见于许多现代应用程序,如社交媒体应用、新闻阅读器等,以提高用户体验。...
滚动面板用于在需要时添加滚动条到组件上。 ##### 5. 下拉列表(JComboBox) 下拉列表用于提供一个选项列表供用户选择。 ##### 6. 单选按钮(JRadioButton) 单选按钮用于在一组互斥选项中选择一项。 ##### 7. 复选...
用户可以通过滚动条查看更多的商品,也可以通过JButton进行翻页操作。 2. **购物车**:用户可以将选择的商品添加到购物车,购物车的管理通常涉及到一个数据结构(如ArrayList或LinkedList)来存储选中的商品对象。...
15. JScrollBar, JSlider: 分别提供垂直和水平滚动条以及滑块组件,用于调整视图或数值。 16. JProgressBar: 显示任务的进度,例如文件传输或计算过程。 17. JFormattedTextField, JPasswordField: 前者允许格式化...
在Java Swing中,`JSplitPane`是一个非常强大的组件,用于创建可调整大小的容器来容纳两个子组件(例如面板或滚动窗格),并且允许用户通过拖动分割条来调整每个子组件的大小。下面将详细介绍如何使用`JSplitPane`来...