JScrollBar
接到了GUI相关的task,从来没看Java的我只好各种百度加看书了。这里介绍了 JScrollBar 的简单应用。 话不多说,直接上代码和效果图。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*; public class JScrollBarExample implements AdjustmentListener
{
JPanel jPanel = new JPanel();
/*
* 产生一个垂直滚动轴,默认滚动轴位置在10刻度的地方,extent值设10,minimum值为0, maximan值为100,因此滚动轴一开始在刻度10的位置上,
* 可滚动的区域大小为100-10-0=90刻度,滚动范围在0~90中。
*/
JScrollBar scrollBarVerticalDirection = new JScrollBar(JScrollBar.VERTICAL, 10, 10, 0, 100);
JScrollBar scrollBarHorizontalDirection = new JScrollBar();
JLabel jLable = new JLabel("刻度:", JLabel.CENTER);
JLabel jLableForResult = new JLabel("Result:", JLabel.CENTER);
JFrame jFrame = new JFrame("JScrollBarDemo");
JLabel label1 = new JLabel(new ImageIcon(".\\icons\\flower.jpg")); public JScrollBarExample()
{
jbInit();
} private void jbInit()
{
Container contentPane = jFrame.getContentPane();
jPanel.add(jLable);
// 设置拖曳滚动轴时,滚动轴刻度一次的变化量。
scrollBarVerticalDirection.setUnitIncrement(1);
// 设置当鼠标在滚动轴列上按一下是,滚动轴一次所跳的区块大小
scrollBarVerticalDirection.setBlockIncrement(10);
scrollBarVerticalDirection.addAdjustmentListener(this); contentPane.add(jPanel, BorderLayout.CENTER);
contentPane.add(scrollBarVerticalDirection, BorderLayout.EAST);
contentPane.add(jLable, BorderLayout.NORTH);
//contentPane.add(jLableForResult, BorderLayout.NORTH); jFrame.setSize(new Dimension(200, 200));
jFrame.setVisible(true);
jFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
} public void adjustmentValueChanged(AdjustmentEvent e) {
if ((JScrollBar) e.getSource() == scrollBarVerticalDirection)
{
jLable.setText("垂直刻度" + e.getValue());
if(e.getValue() >= 90)
{
//jLableForResult.setText("XXXX");
System.out.println("XXXXXXXXXXXXXX ");
}
}
} public static void main(String[] args)
{
new JScrollBarExample();
}
} 效果图:
参考资料:
erbo2008.iteye.com/blog/834862
http://download.oracle.com/technetwork/java/javase/6/docs/zh/api/javax/swing/JScrollBar.html#JScrollBar(int,%20int,%20int,%20int,%20int)
JScrollBar的更多相关文章
- JTabbedPane 和 JScrollBar 联合使用
需求:实现一个JTabbed, 当下拉到Tabbed的底部时,自动加载下一次的数据. 下面是具体代码: import java.awt.*; import javax.swing.table.Defa ...
- java swing文件内容检索工具
Java相关技术 - 文件内容检索工具 拿到一个几百M甚至上G的project让你去学习 有时候你会想知道某个关键词是在哪个文件里 比如:spring MVC配置的@RequestMapping,你从 ...
- JAVA 如何使JScrollPane中的JTextArea自动滚动到最后一行?
1.要使JTextArea带有滚动条,需将JTextArea对象添加到JScrollPane中. JTextArea logArea = new JTextArea(15, 35); //创建JTex ...
- java模拟一个简单的QQ
v 项目源码 https://github.com/hjzgg/java_QQ v 标题效果 package testFour; import java.awt.Color; import ...
- java中如何将JScrollPane的垂直滚动条自动移动到最下端
JPanel QQP = new JPanel(); JScrollPane jsp = new JScrollPane(QQP); JScrollBar jsb = jsp.getVerticalS ...
- 【Swing】Swing初步认知
AWT(abstract Window Toolkit) AWT是java发布的第一个图形界面库.AWT通过调用系统本地的库,来创建和显示控件. AWT 的组件都是使用的native code来编写的 ...
- java使用方法总结
第一章 字符串 . 获取字符串的长度: length() . 判断字符串的前缀或后缀与已知字符串是否相同 前缀 startsWith(String s) .后缀 endsWith(String s) ...
- swing Event-Listener-Adapter 对照表
Source Event Event Listener AbstractButton (JButton,JToggleButton, JCheckBox,JRadioButton ActionEven ...
- java GUI之事件处理
常见事件及相应事件源类型 事件源 用户操作 事件 JButton 点击按钮 ActionEvent JTextField 在文本域按回车键 ActionEvent JCheckBox 点击复选框 Ac ...
随机推荐
- CentOS 6.5 PPTPD VPN服务器安装,解决807等问题。
需要两个组件: ppp pptpd 需要配置的地方有三处: /etc/pptpd.conf /etc/ppp/options.pptpd /etc/ppp/chap-secrets 需要开启IP转发: ...
- C#基础系列——小话泛型
前言:前面两章介绍了C#的两个常用技术:C#基础系列——反射笔记 和 C#基础系列——Attribute特性使用 .这一章来总结下C#泛型技术的使用.据博主的使用经历,觉得泛型也是为了重用而生的,并且 ...
- iOS学习-KVO设计模式
KVO 即Key-Value Observing 键-值观察的缩写,简单的说就是通过键来观察一个对象属性值的变化.当这个被观察的属性发生变化时,观察者就会收到通知(观察者可以是这个对象本身,也可以是 ...
- BZOJ4533 [BeiJing2014 WinterCamp] 数据
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...
- Beta阶段第五次Scrum Meeting
情况简述 BETA阶段第二次Scrum Meeting 敏捷开发起始时间 2016/12/15 00:00 敏捷开发终止时间 2016/12/16 00:00 会议基本内容摘要 平稳推进 参与讨论人员 ...
- jQuery插件之Cookie插件使用方法~
一.介绍 1-1.jQuery.Cookie.js插件是一个轻量级的Cookie管理插件.下载地址:jQuery-cookie.js 有需要的朋友,右键另存为即可! 二.使用方法 2-1.引入jQu ...
- 深入理解redis持久化
持久化方式: 快照(RDB)方式,默认方式,文件以二进制方式保存到RDB文件. 文件追加(AOF)方式,文件以协议文本的方式write到AOF文件. 作用,重启后的数据恢复.当两种方式都启用时,red ...
- TransactionScope 之分布式配置
.Net开发过程中,涉及多个数据库和不同数据库的分布式事务(Distributed Transaction)开发,有时会碰到“与基础事务管理器的通信失败”的错误.导致这个错误一般有下列三个原因:1) ...
- java8--类加载机制与反射(java疯狂讲义3复习笔记)
本章重点介绍java.lang.reflect包下的接口和类 当程序使用某个类时,如果该类还没有被加载到内存中,那么系统会通过加载,连接,初始化三个步骤来对该类进行初始化. 类的加载时指将类的clas ...
- Android之自定义属性
有些时候会觉得Android中提供的控件不能满足项目的要求,所以就会常常去自定义控件.自定义控件就不免会自定义属性.自定义属性大致需要三个步骤:在XML文件中定义自定义属性的名称和数据类型.在布局中调 ...