/**
@version 1.11 2002-07-10
@author Cay Horstmann
*/
package Components.SliderTest;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
public class SliderTest
{
public static void main(String[] args)
{
SliderTestFrame frame = new SliderTestFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}
/**
A frame with many sliders and a text field to show slider
values.
*/
class SliderTestFrame extends JFrame
{
public SliderTestFrame()
{
setTitle("SliderTest");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
sliderPanel = new JPanel();
sliderPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
// common listener for all sliders
listener = new
ChangeListener()
{
public void stateChanged(ChangeEvent event)
{
// update text field when the slider value changes
JSlider source = (JSlider)event.getSource();
textField.setText("" + source.getValue());
}
};
// add a plain slider
JSlider slider = new JSlider();
addSlider(slider, "Plain");
// add a slider with major and minor ticks
slider = new JSlider();
slider.setPaintTicks(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(5);
addSlider(slider, "Ticks");
// add a slider that snaps to ticks
slider = new JSlider();
slider.setPaintTicks(true);
slider.setSnapToTicks(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(5);
addSlider(slider, "Snap to ticks");
// add a filled slider
slider = new JSlider();
slider.setPaintTicks(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(5);
slider.putClientProperty("JSlider.isFilled",
Boolean.TRUE);
addSlider(slider, "Filled");
// add a filled and inverted slider
slider = new JSlider();
slider.setPaintTicks(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(5);
slider.putClientProperty("JSlider.isFilled",
Boolean.TRUE);
slider.setInverted(true);
addSlider(slider, "Inverted");
// add a slider with numeric labels
slider = new JSlider();
slider.setPaintTicks(true);
slider.setPaintLabels(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(5);
addSlider(slider, "Labels");
// add a slider with alphabetic labels
slider = new JSlider();
slider.setPaintLabels(true);
slider.setPaintTicks(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(5);
Hashtable labelTable = new Hashtable();
labelTable.put(new Integer(0), new JLabel("A"));
labelTable.put(new Integer(20), new JLabel("B"));
labelTable.put(new Integer(40), new JLabel("C"));
labelTable.put(new Integer(60), new JLabel("D"));
labelTable.put(new Integer(80), new JLabel("E"));
labelTable.put(new Integer(100), new JLabel("F"));
slider.setLabelTable(labelTable);
addSlider(slider, "Custom labels");
// add a slider with icon labels
slider = new JSlider();
slider.setPaintTicks(true);
slider.setPaintLabels(true);
slider.setSnapToTicks(true);
slider.setMajorTickSpacing(20);
slider.setMinorTickSpacing(20);
labelTable = new Hashtable();
// add card images
labelTable.put(new Integer(0),
new JLabel(new ImageIcon("nine.gif")));
labelTable.put(new Integer(20),
new JLabel(new ImageIcon("ten.gif")));
labelTable.put(new Integer(40),
new JLabel(new ImageIcon("jack.gif")));
labelTable.put(new Integer(60),
new JLabel(new ImageIcon("queen.gif")));
labelTable.put(new Integer(80),
new JLabel(new ImageIcon("king.gif")));
labelTable.put(new Integer(100),
new JLabel(new ImageIcon("ace.gif")));
slider.setLabelTable(labelTable);
addSlider(slider, "Icon labels");
// add the text field that displays the slider value
textField = new JTextField();
Container contentPane = getContentPane();
contentPane.add(sliderPanel, BorderLayout.CENTER);
contentPane.add(textField, BorderLayout.SOUTH);
}
/**
Adds a slider to the slider panel and hooks up the listener
@param s the slider
@param description the slider description
*/
public void addSlider(JSlider s, String description)
{
s.addChangeListener(listener);
JPanel panel = new JPanel();
panel.add(s);
panel.add(new JLabel(description));
sliderPanel.add(panel);
}
public static final int DEFAULT_WIDTH = 350;
public static final int DEFAULT_HEIGHT = 450;
private JPanel sliderPanel;
private JTextField textField;
private ChangeListener listener;
}
java初学者必看ppt
需积分: 0 42 浏览量
更新于2008-10-19
收藏 1.58MB 7Z 举报
Java编程语言是软件开发领域中的基础且至关重要的技术,尤其对于初学者来说,掌握Java能够为未来的职业生涯打下坚实的基础。"Java初学者必看PPT"是软件工程学院的教师精心准备的教学资料,旨在帮助新手快速理解并上手Java编程。这份PPT的特点在于讲解内容清晰,同时配合了实际的代码示例,使得理论与实践相结合,更加直观易懂。
Eclipse是Java开发中常用的集成开发环境(IDE),它提供了丰富的功能,包括代码编辑、调试、构建和部署等,对于初学者和专业开发者都非常友好。在学习Java的过程中,掌握Eclipse的使用是必不可少的一步。通过Eclipse,你可以创建、运行和调试Java项目,其强大的代码自动完成和错误检测功能能有效提高开发效率。
在PPT的四部分——Lab01到Lab04中,我们可以预期会涵盖以下Java编程的基础知识点:
1. **Java环境配置**:包括JDK的安装、环境变量的设置,这是运行Java程序的前提。
2. **基本语法**:讲解Java的基本数据类型、变量、运算符、流程控制语句(如if、for、while)以及方法的定义和调用。
3. **类与对象**:深入理解面向对象编程的基础,包括类的定义、对象的创建、封装、继承和多态等概念。
4. **数组与集合框架**:学习如何创建和操作数组,以及使用ArrayList、LinkedList、HashSet等集合类。
5. **异常处理**:理解Java的异常体系,学会try-catch-finally语句块的使用。
6. **IO流**:介绍输入/输出流的概念,包括文件读写、对象序列化等。
7. **多线程**:理解线程的概念,掌握Thread类和Runnable接口的使用,了解同步和互斥机制。
8. **Eclipse IDE的使用**:如何创建Java项目、编写代码、运行程序、调试步骤,以及使用Eclipse的其他高级特性。
9. **实战案例**:通过具体的编程实例,将所学知识应用于实践中,提升解决问题的能力。
通过这份PPT的学习,初学者不仅能够全面掌握Java编程的基础知识,还能了解到如何在Eclipse中高效地进行开发工作。理论结合实践,将使学习过程更加生动有趣,为后续的进阶学习和项目开发奠定坚实的基础。因此,"Java初学者必看PPT"是一份非常有价值的资源,值得每一位想要踏入Java世界的朋友去研读和实践。
Elizabethxxj
- 粉丝: 0
- 资源: 2