作者LPH66 (-858993460)
看板java
标题Re: [问题] 新手问题
时间Mon Dec 27 14:12:31 2010
※ 引述《pepsitetsu (pepsi !)》之铭言:
: private void moveBall()
: {
: while (s)
: {
: <恕删>
: }
: }
: class BtnClickListener implements ActionListener
: {
: public void actionPerformed(ActionEvent e)
: {
: s = !s;
: String msg=s?"Stop":"Start";
: btn.setText(msg);
: moveBall();
: }
: }
没仔细看 不过你在这里呼叫 moveBall 应该会出事
因为这里是 GUI 的 Thread 在叫的 你还叫它去跑回圈
当 s 被变成 true 时你的 GUI Thread 就卡住了
正解是把这行 moveBall(); 拿掉
然後把你的 moveBall 改成「判断 s 值决定要不要让球移动」
而不是「不移时跳出回圈」
--
"LPH" is for "Let Program Heal us"....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.28.92