Skip to content

Commit ffe0b79

Browse files
authored
demonstrate scroll bar using applet
1 parent ce2e3d7 commit ffe0b79

1 file changed

Lines changed: 61 additions & 0 deletions

File tree

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
import java.awt.*;
2+
import java.awt.event.*;
3+
import java.applet.*;
4+
5+
/*
6+
<applet code="SBDemo" width=300 height=250>
7+
</applet>
8+
*/
9+
10+
public class SBDemo extends Applet implements AdjustmentListener, MouseMotionListener {
11+
12+
String msg = "";
13+
Scrollbar vertSB, horzSB;
14+
15+
public void init() {
16+
17+
int width = Integer.parseInt(getParameter("width"));
18+
int height = Integer.parseInt(getParameter("height"));
19+
20+
vertSB = new Scrollbar(Scrollbar.VERTICAL, 0, 1, 0, height);
21+
vertSB.setPreferredSize(new Dimension(20, 100));
22+
horzSB = new Scrollbar(Scrollbar.HORIZONTAL, 0, 1, 0, width);
23+
horzSB.setPreferredSize(new Dimension(100, 20));
24+
25+
add(vertSB);
26+
add(horzSB);
27+
28+
// register to receive adjustment events
29+
vertSB.addAdjustmentListener(this);
30+
horzSB.addAdjustmentListener(this);
31+
32+
addMouseMotionListener(this);
33+
}
34+
35+
public void adjustmentValueChanged(AdjustmentEvent ae) {
36+
repaint();
37+
}
38+
39+
// Update scroll bars to reflect mouse dragging.
40+
public void mouseDragged(MouseEvent me) {
41+
int x = me.getX();
42+
int y = me.getY();
43+
vertSB.setValue(y);
44+
horzSB.setValue(x);
45+
repaint();
46+
}
47+
48+
// Necessary for MouseMotionListener
49+
public void mouseMoved(MouseEvent me) {
50+
}
51+
52+
// Display current value of scroll bars.
53+
public void paint(Graphics g) {
54+
msg = "Vertical: " + vertSB.getValue();
55+
msg += ", Horizontal: " + horzSB.getValue();
56+
g.drawString(msg, 6, 160);
57+
58+
// show current mouse drag position
59+
g.drawString("*", horzSB.getValue(), vertSB.getValue());
60+
}
61+
}

0 commit comments

Comments
 (0)