当前位置:编程学习 > wap >>

用User::WaitForRequest(iStatus) 实现异步图片旋转函数 Rotate时程序停住了 急急急!!!!

CBitmapRotator* iRotator= CBitmapRotator::NewL(); //图片旋转 

CleanupStack::PushL(iRotator);

TRequestStatus iStatus=KRequestPending;

iRotator->Rotate( &iStatus, *iBitmap,CBitmapRotator::ERotation270DegreesClockwise );

User::WaitForRequest(iStatus);

if( iStatus != KErrNone ) 
{
iBitmap=NULL;
}

CleanupStack::PopAndDestroy();

当执行到 User::WaitForRequest(iStatus); 时程序停住了,过不去?请问怎样解决? --------------------编程问答-------------------- 需要较长时间的操作还是要用活动对象来实现异步操作。 --------------------编程问答-------------------- 摇兄,五颗星了?!牛!

楼主的问题似乎是图片没翻转成功。而不是翻转的时间太长了。 --------------------编程问答-------------------- 是啊!请问如何处理啊?到User::WaitForRequest(iStatus); 时程序停住了,过不去?请问如何进行图片的翻转。如何该旋转函数? --------------------编程问答-------------------- 实际上必须用活动对象才能实现,如果你非常想以同步方式旋转图片,可以参考下面这个贴子中的代码写:

http://discussion.forum.nokia.com/forum/showthread.php?t=87423

另:我在上面给的代码是在一个纯EXE里写的,所以自己创建和安装了活动调度器,并且直接使用了嵌套活动调度器将异步操作同步化。如果你是在GUI应用程序里做图片旋转则不必在创建和安装活动调度器,并且为了安全起见可以使用CActiveSchedulerWait代替CActiveScheduler。
--------------------编程问答-------------------- ManZY(白桦*_*) ( ) 信誉:100    Blog  2007-1-16 19:19:37  得分: 0  
 
摇兄,五颗星了?!牛!

楼主的问题似乎是图片没翻转成功。而不是翻转的时间太长了。


=============================================================
5个角儿而已,子腾兄才是真正的星级人物:)

  
 
补充:移动开发 ,  Symbian
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,