状态面板
来源:互联网 发布:java并发编程实战 编辑:程序博客网 时间:2024/04/27 19:53
如何只保留导航面板,隐藏标题面板,上下文面板在资源文件中修改:RESOURCE EIK_APP_INFO{menubar = r_menubar;status_pane = r_status_pane_small; //R_AVKON_STATUS_PANE_LAYOUT_SMALL;cba = R_AVKON_SOFTKEYS_OPTIONS_EXIT;}RESOURCE STATUS_PANE_APP_MODEL r_status_pane_small{layout = R_AVKON_STATUS_PANE_LAYOUT_SMALL;}即可。面板分为状态面板、主面板和软键面板。其中以针对状态面板的操作为主。状态面板分为下列子面板:标题面板、上下文面板、导航面板、信号面板、电池面板和通用指示符面板。要操作状态面板,首先应该通过CEikStatusPane* CAknAppUi::StatusPane()得到状态面板的指针。CEikStatusPane提供了对状态面板进行操作的各种方法:class CEikStatusPane : public CEikStatusPaneBase, public MCoeForegroundObserver;MembersDefined in CEikStatusPane: ApplyCurrentSettingsL(), HandleResourceChange(), MakeVisible(), NewL(), SetDimmed(), SetFaded(), ~CEikStatusPane()Inherited from CBase: operator new()Inherited from CEikStatusPaneBase: ContainerControlL(), ControlL(), Current(), GetShapeL(), IsDimmed(), IsFaded(), IsVisible(), PaneCapabilities(), PaneRectL(), ReduceRect(), SetFlags(), SetObserver(), SwapControlL(), SwitchLayoutL(), TPaneCapabilities, WindowGroup()Inherited from MCoeForegroundObserver: HandleGainingForeground(), HandleLosingForeground()1.可见性操作 CEikStatusPane* statusPane = StatusPane(); if (statusPane->CurrentLayoutResId() != R_AVKON_STATUS_PANE_LAYOUT_EMPTY) { statusPane->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_EMPTY); } else { statusPane->SwitchLayoutL(R_AVKON_STATUS_PANE_LAYOUT_USUAL); }CurrentLayoutResId()返回当前布局的资源ID,关于资源ID的定义可参照,有以下几种, R_AVKON_STATUS_PANE_LAYOUT_IDLE,R_AVKON_STATUS_PANE_LAYOUT_USUAL, R_AVKON_STATUS_PANE_LAYOUT_POWER_OFF_RECHARGE, R_AVKON_STATUS_PANE_LAYOUT_EMPTY等。SwitchLayoutL()把状态面板的布局更改为指定的资源ID。注意,不应使用CEikStatusPane的IsVisible()和MakeVisible()来检查和设置面板的可见性,因为它们同时会隐藏电话拨入图标。在对状态面板的子面板操作时,需要通过下面方法得到子面板(以更改标题面板文本为例):TUid titlePaneUid;titlePaneUid.iUid = EEikStatusPaneUidTitle;CEikStatusPane* statusPane = StatusPane();CEikStatusPaneBase::TPaneCapabilities subPane = statusPane->PaneCapabilities(titlePaneUid);if (subPane.IsPresent() && subPane.IsAppOwned()){ CAknTitlePane* titlePane = (CAknTitlePane*)statusPane->ControlL(titlePaneUid); HBufC* titleText = StringLoader::LoadLC(R_HEWB_TITLE_TEXT); titlePane->SetTextL(*titleText); CleanupStack::PopAndDestroy(titleText);}要得到子面板,需要实现准备好子面板的ID,它们定义在中,有下列几种: EEikStatusPaneUidSignal(信号面板),EEikStatusPaneUidBattery(电池面板), EEikStatusPaneUidContext(上下文面板),EEikStatusPaneUidTitle(标题面板), EEikStatusPaneUidNavi(导航面板),EEikStatusPaneUidIndic, EEikStatusPaneUidMessage,EEikStatusPaneUidClock。TPaneCapabilities PaneCapabilities(TPaneId aPaneId)方法获取子面板的相关信息。TPaneCapabilities 是CEikStatusPaneBase的嵌套类,有IsPresent(),IsAppOwned(),IsInCurrentLayout()等方法。IsPresent()检查标题面板是否存在;IsAppOwned()检查面板是否能被应用程序更改;IsCurrentLayout()检测面板是否为当前面板布局的一部分。一旦确定了面板存在并可修改,调用CCoeControl* CEikStatusPaneBase::ControlL(TPaneId aPaneId)得到子面板的指针,然后即可对其进行操作。关于标题面板和上下文面板的操作均较简单,可参照SDK中CAknTitlePane和 CAknContextPane。比较复杂的是导航面板,将另文介绍。 原文地址 http://hi.baidu.com/richiechyi/blog/item/f4bd13a4032e1bf39152ee6d.html 转载自:http://blog.sina.com.cn/s/blog_448367c90100a9ve.html 状态面板(Status Pane) Symbian S60应用程序窗口的标准面板由状态面板、主面板和控制面板组成。http://blog.csdn.net/dycwahaha/archive/2008/09/09/2906375.aspx 1、状态面板组成 状态面板占据了屏幕区域的顶部,用于显示与当前应用程序和设备自身状态有关的信息。分别有下列子面板组成:标题面板(Title pane)。 上下文面板(Context pane)。 导航面板(Navi pane)。 信号面板(Signal pane)。 电池面板(Battery pane)。 通用指示器面板(Universal indicator pane)。 下列子面板的内容可以在应用程序中修改:标题面板(Title pane):默认显示应用程序的名字。可以更改为显示自定义文本,或显示一幅位图图像。 上下文面板(Context pane):默认显示系统指定的应用程序图标,可以根据需要更改为其他图标。 导航面板(Navi pane):导航面板的主要用途是显示与应用程序的当前状态有关的信息,以及说明当前显示的是哪个视图。此外,还可以使用它在应用程序内导航(切换视图)。导航面板默认为空白,可以根据需要用选项卡、导航标签、图像、指示器或文件夹结构指示符修饰它。 2、状态面板可见性和尺寸2.1、更改状态面板可见性 为了修改状态面板,需要获得状态面板句柄。在AppUi和View中都有获得句柄的方法StatusPane()。CEikStatusPane* statusPane = StatusPane();本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dycwahaha/archive/2008/09/09/2906375.aspx
- 状态面板
- S60 状态面板
- Symbian 面板之状态面板(StatusBar)(ZT)
- S60平台应用状态面板常用样式
- 60平台应用状态面板常用样式
- 60平台应用状态面板常用样式
- ubuntu中面板恢复默认状态
- QQ面板拖拽在线状态改变
- 面板
- axure7.0 动态面板 一个按钮 跳转到不同页的动态面板某个状态
- Axure RP Pro - 相关问题 - 判断动态面板的状态
- Symbian C++学习之——状态面板
- Linux下所有面板删除,恢复到系统初始状态
- Ubuntu之恢复上方面板为初始状态
- 基于HTML5的网络拓扑图 - 定制状态面板
- Ubuntu 14.04 隐藏 ibus 输入法切换状态面板
- Symbian OS 应用程序UI组件(四) — 状态面板(ZZ)
- Symbian S60平台中状态面板的几种常用样式
- 守望
- 精准网络营销时代互动是成败的关键
- “如何将16进制码流在html中显示为图片”兼容多个浏览器的方案。
- (⊙o⊙)…
- Form,Dwr提交的不同
- 状态面板
- (ZJU-2005复试)-HDOJ-1180-Self Numbers
- 项目经理预成长
- C#语言基础常见问题汇总
- 软件测试的常识
- 中文搜索引擎提交大全
- 如何定位导致Crash的代码位置
- 不靠谱的翻译
- Web 控件 DropDownList 在javascript 的 onchange