Symbian截屏以及前后台切换(Screen capture)
来源:互联网 发布:http post数据 编辑:程序博客网 时间:2024/04/25 18:48
这几天研究动态桌面的问题。其实在做这一块时已经打下了很多基础。
比如我实现了GIF的解码。比如我能监听到何时切换到待机界面。
有了上述的准备工作,目前做动态桌面还是比较轻松。
其实动态桌面的实现方式有二种:
1.判断当前为待机界面。创建顶层窗口,然后在顶层窗口上绘制需要的图像
2.随机启动将应用程序压到后台,当检查到为待机桌面时。将应用程序带到前台。
目前用第二种方式实现的。
将应用程序带到前台时,需要处理待机界面的TITLE栏。用截屏的方式,先绘制
待机界面,然后再到指定的区域绘制指定的动漫。
如何实现截屏,以及如何将程序前后台切换将是重点。让我们来看看吧。
//截屏
void C***::ScreenCapture()
{
TSize screenSize = CEikonEnv::Static()->ScreenDevice()->SizeInPixels();
TDisplayMode displayMode = CEikonEnv::Static()->ScreenDevice()->DisplayMode();
//创建截屏后,保存图像的位图
iBitmap = new (ELeave) CFbsBitmap();
User::LeaveIfError(iBitmap->Create(screenSize, displayMode));
//截屏
TInt err = CEikonEnv::Static()->ScreenDevice()->CopyScreenToBitmap(iBitmap);
}
//前后台切换
后台向前台切换
void C***::Back2Front()
{
iSBack = false;//back
TApaTask task(iEikonEnv->WsSession());
task.SetWgId(CEikonEnv::Static()->RootWin().Identifier());
task.BringToForeground();
}
//前后向后台切换
void CCTopWindow::Front2Back()
{
iSBack = true;//back
TApaTask task(iEikonEnv->WsSession());
task.SetWgId(CEikonEnv::Static()->RootWin().Identifier());
task.SendToBackground();
}
以上代码己在N73和6120C上测试通过。
TDisplayMode displayMode = CEikonEnv::Static()->ScreenDevice()->DisplayMode();
//创建截屏后,保存图像的位图
iBitmap = new (ELeave) CFbsBitmap();
User::LeaveIfError(iBitmap->Create(screenSize, displayMode));
//截屏
TInt err = CEikonEnv::Static()->ScreenDevice()->CopyScreenToBitmap(iBitmap);
}
//前后台切换
后台向前台切换
void C***::Back2Front()
{
iSBack = false;//back
TApaTask task(iEikonEnv->WsSession());
task.SetWgId(CEikonEnv::Static()->RootWin().Identifier());
task.BringToForeground();
}
//前后向后台切换
void CCTopWindow::Front2Back()
{
iSBack = true;//back
TApaTask task(iEikonEnv->WsSession());
task.SetWgId(CEikonEnv::Static()->RootWin().Identifier());
task.SendToBackground();
}
以上代码己在N73和6120C上测试通过。
- Symbian截屏以及前后台切换(Screen capture)(
- Symbian截屏以及前后台切换(Screen capture)
- symbian前后台切换
- Symbian 程序的前后台切换
- Symbian 程序的前后台切换
- How to capture screen to bitmap如何实现截屏(Symbian)
- 检测Qt for symbian前后台切换 以及 信号槽使用的注意事项
- 【symbian】如何实现程序的前后台运行切换
- qt for symbian前后台切换事件的截获处理
- qt for symbian前后台切换事件的截获处理
- IOS 前后台切换
- IOS 前后台切换
- linux前后台切换
- linux 前后台切换
- linux前后台切换
- Android前后台切换
- Symbian前后台转换程序
- Anti-Screen Capture(Prevent Screen Captures)截屏与反截屏
- Symbian程序隐藏(Program hide)
- 什么是NAT网关
- Symbian自启动(AutoStart)
- tcsh编程学习2
- 汇编语言求数组的长度_$的用法
- Symbian截屏以及前后台切换(Screen capture)
- 倾城之恋
- tcsh编程学习3
- Symbian主题处理
- 开始CUDA的研究
- 【代码示例】判断字符串是否可转换为数字并格式化0.00为0
- c# 疑难(一)之打开“OpenFileDialog”文本对话框后默认路径改变问题和解决方法
- Symbian 自定义桌面图像的响应
- 国外电子工程师们和国内电子工程师