Re: [问题] 连续播放图片问题

楼主: puppyulove (WHY)   2016-02-15 14:53:00
※ 引述《omidofor (妈妈咪呀)》之铭言:
: 因为你没有提到任何相关资讯,
: 所以我假设你写的是Swing,
: 目的是希望当按下一个按钮之后,
: 会让一个Label以间隔一秒的速度不停的变换图片。
: 假设你想要让他变换10张图,
: 你目前的情况是:
: 按下按钮后,
: 视窗会停住10秒,
: 而最后停在最后一张图片。
: 原因在于,
: Swing在触发一个事件之后,
: 必须要等事件处理结束之后才会重新绘制画面。
: 你现在可能是这样做,
: 按下按钮 -> 执行actionPerformed -> 每秒换一张图片 -> 结束actionPerformed
: 以这个例子来说,
: 视窗要等到结束actionPerformed结束之后才会重新绘制画面。
: 因此你要在按下按钮后起一个thread负责去更新图片。
: 大概是这样。
: new Thread(){
: @Override
: public void run(){
: //do something
: }
: }.start();
: 你可以试试看用Java 8 Lambda改写这个。
: 另外如果你想写Java GUI的话,
: 建议你可以学JavaFx8,
: 这个功能就可以用animation来达成。
: 而且个人觉得JavaFx比Swing漂亮很多。
: 最后,
: 有些事情想说明一下。
: 有时候我们会看到板上有些发问的文章没有板众解答,
: 当出现这样子的情况时,
: 我觉得对发问者来说可能代表一种警讯。
: “没有人回答不是这个问题没有人会,而是没有人知道你在问什么。”
: 因此当你要发问的时候,
: 最好钜细靡遗的讲出,
: 你在写什么、想写什么功能、你是怎么做的、程式码长怎样,
: 以及其他可以帮助板众了解问题的资讯。
: 不然板友可没有太多时间在那猜你的心思啊。
: 若是有不懂的或是情况不相同的话,
: 再回复到板上吧。
: ※ 引述《puppyulove (WHY)》之铭言:
: : 请问一下如何连续播放图片
: : 大约是1秒钟放一张
: : 是设置sleep(1000)吗
: : 但这样子每次都只会跳出最后一张QQ
: : 请问要怎么用呢?~
安安~
还有问题要请教您
我是利用setImageBitmap来生成图片(QR码)
外面包覆for循环
像是
for(int i=0;i<=10;i++)
{
try {
BitMatrix matrix2 = writer.encode("1234", BarcodeFormat.QR_CODE, 800, 800);
mQrcodeImage.setImageBitmap(toBitmap(matrix2));
} catch (WriterException e) {}
try{
thread sleep(1000);
}catch(InterruptedException e1){}
}
这样的话要怎么创新的thread更新图片,让它可以在这10张图片中各停顿一秒呢?
要在新增一个class作新的new thread 在呼叫进去吗?
感激~><
作者: omidofor (妈妈咪呀)   2016-02-15 18:02:00
你这个问题我上篇文就回答你啦,你现在不清楚的应该是thread的使用,找本书看一下比较能有全面的了解。
作者: Expsun (无限燃烧)   2016-02-16 04:50:00
官网有SwingWorker的教学
楼主: puppyulove (WHY)   2016-02-16 12:14:00
我加入了new Thread()但是跑第一张图完等一秒后就会ANR 跳出来QQ 为什么呢?是要把原先位置的图移除后再放吗? 可以直接覆蓋吗?~
作者: omidofor (妈妈咪呀)   2016-02-16 18:44:00
结果现在才知道你在写android...
楼主: puppyulove (WHY)   2016-02-17 13:26:00
呃~ 差别在哪里呢QQ IDE吗我去AS版问看看好了~~ 感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com