我对JScrollBar做了AdjustmentListener监听 
可改变那个值后没执行AdjustmentListener中的代码 
? ?
 public void adjustmentValueChanged(AdjustmentEvent e) {
JOptionPane.showMessageDialog(null , "heh","huhu",JOptionPane.INFORMATION_MESSAGE);
 }这个对话框没弹出来

解决方案 »

  1.   

    JScrollBar 移动后  没触发 adjustmentValueChanged  这个事件 
      

  2.   

    JOptionPane.showMessageDialog(null , "heh","huhu",JOptionPane.INFORMATION_MESSAGE); 
    是不是null这里错了
      

  3.   

    有没有调用 JScrollBar.addXXXListener(...) 方法?
      

  4.   


    JOptionPane的第一个参数是指定对话框的父组件,就是对话框始终在父组件的上面。如果没指定的时候,在使用Tab切换的时候提示框不能自动提到JDialog的上面
    看看你的那个帖子吧 JScrollBar j1; 
    final JDialog f = new JDialog((Frame)null,"查找",true);                    //form为当前窗体 
    f.setModal(true); 
    j1=new JScrollBar(JScrollBar.HORIZONTAL,0,5,0,255); 
    j1.setBounds(50, 50, 300, 15); 
    f.setLayout(null); 
    f.setBounds(100, 100, 400, 300); 
    f.add(j1); 
    j1.addAdjustmentListener(new AdjustmentListener(){ 
            public void adjustmentValueChanged(AdjustmentEvent arg0) { 
    JOptionPane.showMessageDialog(f , "heh","huhu",JOptionPane.INFORMATION_MESSAGE); 

    }); 

    f.setVisible(true); 
    把setVisible放在最后执行,因为他会阻塞线程,导致添加监听在对话框关闭的时候才能执行