开发者社区> 问答> 正文

JAVA如何实现文本框数字滚动

如何用JAVA实现文本框的数字滚动,按开始即开始滚动,按停止能显示一个数字

展开
收起
蛮大人123 2016-06-06 17:35:06 4682 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪
    public class MyFrame extends JFrame implements Runnable{
    JTextField jt1,jt2,jt3;
    JLabel jl1,jl2,jl3;
    JButton jb1,jb2;
    boolean boo=false;
    public MyFrame(){
    super("简单的抽奖程序");
    
    jt1=new JTextField(10);
    jt2=new JTextField(10);
    jt3=new JTextField(10);
    jl1=new JLabel("请输入号码区间:");
    jl2=new JLabel("到");
    jl3=new JLabel(" ");
    jb1=new JButton("开始抽奖");
    jb2=new JButton("停止");
    setLayout(new FlowLayout());
    add(jl1);add(jt1);add(jl2);add(jt2);add(jt3);add(jb1);add(jb2);add(jl3);
    jb1.addActionListener(new jbAction());
    jb2.addActionListener(new jb2Action());
    }
    class jbAction implements ActionListener{
    public void actionPerformed(ActionEvent e) {
    boo=true;
    new Thread().start();
    }
    }
    class jb2Action implements ActionListener {
    
            public void actionPerformed(ActionEvent e) {
                boo=false;
                jl3.setText("恭喜"+jt3.getText()+"中奖!");
            }
        }
    public static void main(String[] args) {
            MyFrame myFrame=new MyFrame();
            myFrame.setSize(500, 400);
            myFrame.setVisible(true);
    }
    @Override
    public void run() {
        while (boo) {
            String str1=jt1.getText();
            int j1=Integer.parseInt(str1);
            String str2=jt2.getText();
            int j2=Integer.parseInt(str2);
            int s=(int) (j1+(Math.random()*(j2-j1+1)));
            String string=Integer.toString(s);
            jt3.setText(string);            
            try {
                Thread.sleep(200);
                } catch (InterruptedException e) {
                e.printStackTrace();
                }
        }
    }
    }
    2019-07-17 19:29:07
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载