-
Bug
-
Resolution: Won't Fix
-
P2
-
None
-
1.1.7
-
sparc
-
solaris_7
Problem
-------
java.awt.Scrollbar.setValue() and java.awt.Scrollbar.setValues() fail to
generate an java.awt.event.AdjustmentEvent.
It is expected that such method calls should propagate a:
java.awt.event.AdjustmentEvent
Code Example
------------
import java.awt.*;
import java.awt.event.*;
public class ScrollbarTest {
static boolean flag = true;
public static void main(String argv[]) {
final Frame f = new Frame();
final Panel p = new Panel();
final Scrollbar s = new Scrollbar(Scrollbar.VERTICAL);
final Button b1 = new Button("setValues() - plural");
final Button b2 = new Button("setValue() - singular");
final Button b3 = new Button("hide/show");
final Button b4 = new Button("reset");
final TextArea ta = new TextArea("Adjustment Events \n",
15,2,TextArea.SCROLLBARS_VERTICAL_ONLY);
s.addAdjustmentListener(new AdjustmentListener() {public void
adjustmentValueChanged(AdjustmentEvent ae){
System.out.println(ae);
ta.append(ae.toString()+"\n");
}});
// setValues()
//
b1.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
for (int i = 0; i <10; i++)
s.setValues(i,i,i,i);
}});
// setValue()
//
b2.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
s.setValue(5);
}});
b3.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
s.setVisible(getFlag());
}});
b4.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
s.setValues(5,3,1,10);
}});
f.setLayout(new BorderLayout());
p.add(b1);
p.add(b2);
p.add(b3);
p.add(b4);
f.add(p, BorderLayout.CENTER);
f.add(s, BorderLayout.EAST);
f.add(ta, BorderLayout.SOUTH);
f.setSize(750,400);
f.setVisible(true);
}
static boolean getFlag(){
flag = !flag;
return flag;
}
}
To Reproduce
------------
Install Solaris 7 / SPARC.
Obtain JDK 1.1.7B:
java -version
java version "1.1.7B"
Sometimes known as:
java -fullversion
java full version "JDK1.1.7U"
(Why I don't know :-)
Compile the above code.
javac ScrollbarTest
Run:
java ScrollbarTest
Observe:
No AdjustmentEvents are observed when programmatically
setValue()/setValues().
The failure is also demonstrable using:
java full version "JDK1.1.6N"
a previous "reference" JDK.
-------
java.awt.Scrollbar.setValue() and java.awt.Scrollbar.setValues() fail to
generate an java.awt.event.AdjustmentEvent.
It is expected that such method calls should propagate a:
java.awt.event.AdjustmentEvent
Code Example
------------
import java.awt.*;
import java.awt.event.*;
public class ScrollbarTest {
static boolean flag = true;
public static void main(String argv[]) {
final Frame f = new Frame();
final Panel p = new Panel();
final Scrollbar s = new Scrollbar(Scrollbar.VERTICAL);
final Button b1 = new Button("setValues() - plural");
final Button b2 = new Button("setValue() - singular");
final Button b3 = new Button("hide/show");
final Button b4 = new Button("reset");
final TextArea ta = new TextArea("Adjustment Events \n",
15,2,TextArea.SCROLLBARS_VERTICAL_ONLY);
s.addAdjustmentListener(new AdjustmentListener() {public void
adjustmentValueChanged(AdjustmentEvent ae){
System.out.println(ae);
ta.append(ae.toString()+"\n");
}});
// setValues()
//
b1.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
for (int i = 0; i <10; i++)
s.setValues(i,i,i,i);
}});
// setValue()
//
b2.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
s.setValue(5);
}});
b3.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
s.setVisible(getFlag());
}});
b4.addActionListener(new ActionListener(){public void
actionPerformed(ActionEvent ae){
s.setValues(5,3,1,10);
}});
f.setLayout(new BorderLayout());
p.add(b1);
p.add(b2);
p.add(b3);
p.add(b4);
f.add(p, BorderLayout.CENTER);
f.add(s, BorderLayout.EAST);
f.add(ta, BorderLayout.SOUTH);
f.setSize(750,400);
f.setVisible(true);
}
static boolean getFlag(){
flag = !flag;
return flag;
}
}
To Reproduce
------------
Install Solaris 7 / SPARC.
Obtain JDK 1.1.7B:
java -version
java version "1.1.7B"
Sometimes known as:
java -fullversion
java full version "JDK1.1.7U"
(Why I don't know :-)
Compile the above code.
javac ScrollbarTest
Run:
java ScrollbarTest
Observe:
No AdjustmentEvents are observed when programmatically
setValue()/setValues().
The failure is also demonstrable using:
java full version "JDK1.1.6N"
a previous "reference" JDK.
- relates to
-
JDK-4040860 Adjustable.setValue() does not notify AdjustmentListener
-
- Closed
-
-
JDK-4048060 Scrolling won't stop on sparc-S2 AWT
-
- Closed
-