WEB开发网
开发学院手机开发Symbian 开发 Symbian 下菜单的应用开发技巧 阅读

Symbian 下菜单的应用开发技巧

 2010-03-13 20:25:00 来源:WEB开发网   
核心提示:CleanupStack::PopAndDestroy(); //list}其他编写知识:1.应用程序的退出和EEIKCMDEXIT在一个Avkon程序中,有两个方法可以帮助你退出程序,Symbian 下菜单的应用开发技巧(3),一是exit菜单选项,一个就是back功能键,在出现内嵌程序时就表露出来了,App UI

CleanupStack::PopAndDestroy(); //list

其他编写知识:

1.应用程序的退出和EEIKCMDEXIT在一个Avkon程序中,有两个方法可以帮助你退出程序,一是exit菜单选项,一个就是back功能键,这两种方法有略微的差别,下面我们就来讲讲。

任何程序都可以通过调用Exit()以回应EEikCmdExit来结束程序。类似的,一些控件如dialogs,menus,popup lists等可以以此来回复escape 键的响应以便退出。

What to do

应用程序和views通过HandleCommandL()函数来处理菜单和功能键传来的命令。HandleCommandL()必须能够处理命令ID EEikCmdExit,这个是退出当前程序的信号。

对待这种情况,典型的app UI处理应该调用SaveAnyChangesL()和ExitL()。注意,如果你是写的是view体系程序,那views或app UI都可以处理这些命令,但不能同时处理这些,否则会引起问题的。

当按下back功能键时HandleCommandL()函数还会接受到EAknSoftKey这个命令ID,怎么处理这个命令要看上下文环境。但如果确实要退出,我们就要象接受到EEikCmdExit一样对待它。

功能键back可能总是产生EAknSoftkey这个ID,而菜单选项exit总上会产生EAknCmdExit命令ID,注意这个是和EEikCmdExit不同的,它是不直接使用的一般。

How it works

Exit ()函数的调用将会导致当前程序的退出。如果程序是内嵌的,那控制将交到父窗口那里。在Avkon中,我们希望由back功能键来执行,但exit会导致所有窗口包括父窗口的关闭。关闭机制同样要求相关子窗口应用程序的关闭。这个是连锁反应的。如果要这样操作,可以发送给每个相关程序 EEikCmdExit命令ID。因此程序在调用exit()时应该回应EEikCmdExit和EAknSoftKeyBack命令。 Framework将会在检查到有EAknCmdExit时触发进程。

这就是你使用EAknCmdExit命令ID在你资源中的用处,但应该在HandlCommandL()中回应EEikCmdExit命令ID。

Dialog Shutter

应用程序的dialogs和popup窗口能够通过使用dialog shutter来关闭。

EMBEDDED APPLICATIONS

离开和后退

正如上面所说的,exit和back有所不同,在出现内嵌程序时就表露出来了。

App UI pointers

当你内嵌一个程序时,所有的程序都共享一个CEikonEnv实例。但注意EikonEnv::EikAppUi这个成员函数总是返回最里面的那个应用程序

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Symbian 菜单 应用开发

编辑录入:coldstar [复制链接] [打 印]
赞助商链接