如何使Symbian C++程序全屏显示
2011-07-29 17:08
393 查看
要想使Symbian C++程序实现全屏幕显示,有以下几个方法。
[edit]
使用一个简单的方法,就可以使我们的控件或者控件容器扩展到全屏幕区域,个方法可以应用在即便没有全屏幕视图的视图框架里。那么这个方法就是,CCoeControl::SetExtentToWholeScreen(),你可以在CMyView::ConstructL函数中,ActivateL()函数之前进行调用。请看示范代码:
SetExtentToWholeScreen()函数在支持皮肤的S60(从S60第二版之后,如图所示)应用程序中,并不推荐使用。不过,因为全屏幕的应用程序并不需要什么特别的皮肤支持,所以实际上来讲并不会产生太大的问题。
[edit]
屏幕上方的状态窗口和下方的功能键窗口都可以被隐藏,我们可以用这样的方法实现应用程序的全屏化处理。下面的代码可以应用在AppUi层来将状态窗口(status pane)隐藏起来。
而屏幕下方的功能键窗口,可以在AppUi层调用 Cba()->MakeVisible(EFalse);函数来进行隐藏。执行了这个函数之后,程序默认的功能键将不会再生成响应命令。如果要想使程序默认的左右功能键发挥作用,那么我们将不得不自己手动处理按键事件,这样的操作要在HandleKeyEventL()函数中进行:
有了上述办法,我们就可以将应用程序设置为全屏幕显示了。
[edit]
遮盖系统窗口
使用一个简单的方法,就可以使我们的控件或者控件容器扩展到全屏幕区域,个方法可以应用在即便没有全屏幕视图的视图框架里。那么这个方法就是,CCoeControl::SetExtentToWholeScreen(),你可以在CMyView::ConstructL函数中,ActivateL()函数之前进行调用。请看示范代码:void CMyView::ConstructL(const TRect& aRect) { // Create a window for this application view CreateWindowL(); // Set the window size SetRect(aRect); // This view is a full-screen view. SetExtentToWholeScreen(); // Activate the window, which makes it ready to be drawn ActivateL(); }
SetExtentToWholeScreen()函数在支持皮肤的S60(从S60第二版之后,如图所示)应用程序中,并不推荐使用。不过,因为全屏幕的应用程序并不需要什么特别的皮肤支持,所以实际上来讲并不会产生太大的问题。
[edit]
隐藏
屏幕上方的状态窗口和下方的功能键窗口都可以被隐藏,我们可以用这样的方法实现应用程序的全屏化处理。下面的代码可以应用在AppUi层来将状态窗口(status pane)隐藏起来。#include <eikbtgpc.h> #include <avkon.rsg> StatusPane()->MakeVisible(EFalse);
而屏幕下方的功能键窗口,可以在AppUi层调用 Cba()->MakeVisible(EFalse);函数来进行隐藏。执行了这个函数之后,程序默认的功能键将不会再生成响应命令。如果要想使程序默认的左右功能键发挥作用,那么我们将不得不自己手动处理按键事件,这样的操作要在HandleKeyEventL()函数中进行:
TKeyResponse CMyAppUi::HandleKeyEventL( const TKeyEvent& aKeyEvent,TEventCode aType) { // Left or right softkey pressed if (aType==EEventKeyDown && (aKeyEvent.iScanCode == EStdKeyDevice0 || aKeyEvent.iScanCode == EStdKeyDevice1)) { Cba()->MakeVisible(ETrue); } else { Cba()->MakeVisible(EFalse); } return EKeyWasNotConsumed; }
有了上述办法,我们就可以将应用程序设置为全屏幕显示了。
相关文章推荐
- 用mingw编译C++工程;程序里面的cout<<"aaa";cmd运行c++程序,aaa内容在控制台不显示,如何将aaa输出到控制台屏幕并将控制台内容写到一个文件中。
- Symbian如何建立全屏程序
- C++--如何实现SDI程序使用CSplitterWnd创建的多个视图的动态地显示和关闭视图
- Symbian c++在程序安装时显示一份免责声明
- VS2013 编程环境设置,如何显示C++程序行号。
- C++--如何实现SDI程序使用CSplitterWnd创建的多个视图的动态地显示和关闭视图
- C++--如何实现SDI程序使用CSplitterWnd创建的多个视图的动态地显示和关闭视图
- C++--如何实现SDI程序使用CSplitterWnd创建的多个视图的动态地显示和关闭视图
- vc C++ 子窗口如何全屏显示
- C++--如何实现SDI程序使用CSplitterWnd创建的多个视图的动态地显示和关闭视图
- 如何让程序在Nexus上全屏显示
- 如何将动态链接库(C++ DLL)中的printf显示在其被调用的程序控制台上
- Android程序如何全屏显示
- 如何将动态链接库(C++ DLL)中的printf显示在其被调用的程序控制台上
- Qt Symbian: 如何让自己的程序显示在桌面上方
- windows如何在命令行下编译C/C++程序
- 如何编写C++程序
- 如何用eclipse开发有c++11新特性的C++程序
- QT嵌于某个页面中的多个视频窗口如何显示全屏与恢复
- How to make a full-screen application using Symbian C++, 怎样在Sysmbian C++中制作全屏应用程序