⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 launchjavaview.cpp

📁 在Symbian平台程序调用J2ME程序.
💻 CPP
字号:
/*
============================================================================
 Name        : CLaunchJavaView from LaunchJavaView.h
 Author      : 
 Version     :
 Copyright   : Your copyright notice
 Description : CLaunchJavaView implementation
============================================================================
*/

#include  <APGCLI.H>
#include  <aknviewappui.h>
#include  <avkon.hrh>
#include  <LaunchJava.rsg>
#include  "LaunchJavaView.h"
#include  "LaunchJavaContainer.h" 
#include  "LaunchJava.hrh"

// ---------------------------------------------------------
// CLaunchJavaView::ConstructL(const TRect& aRect)
// EPOC two-phased constructor
// ---------------------------------------------------------
//
void CLaunchJavaView::ConstructL()
    {
    BaseConstructL( R_LAUNCHJAVA_VIEW1 );
    }

// ---------------------------------------------------------
// CLaunchJavaView::~CLaunchJavaView()
// destructor
// ---------------------------------------------------------
//
CLaunchJavaView::~CLaunchJavaView()
    {
    if ( iContainer )
        {
        AppUi()->RemoveFromViewStack( *this, iContainer );
        }

    delete iContainer;
    }

// ---------------------------------------------------------
// TUid CLaunchJavaView::Id()
//
// ---------------------------------------------------------
//
TUid CLaunchJavaView::Id() const
    {
    return KViewId;
    }

// ---------------------------------------------------------
// CLaunchJavaView::HandleCommandL(TInt aCommand)
// takes care of view command handling
// ---------------------------------------------------------
//
void CLaunchJavaView::HandleCommandL(TInt aCommand)
    {   
    switch ( aCommand )
        {
        case EAknSoftkeyOk:
            {
            iEikonEnv->InfoMsg( _L("view1 ok") );
            break;
            }
        case EAknSoftkeyBack:
            {
            AppUi()->HandleCommandL(EEikCmdExit);
            break;
            }

		case ELaunchJavaCmdLaunch:
			{
			DoLaunchL();
			break;
			}

        default:
            {
            AppUi()->HandleCommandL( aCommand );
            break;
            }
        }
    }

// ---------------------------------------------------------
// CLaunchJavaView::HandleClientRectChange()
// ---------------------------------------------------------
//
void CLaunchJavaView::HandleClientRectChange()
    {
    if ( iContainer )
        {
        iContainer->SetRect( ClientRect() );
        }
    }

// ---------------------------------------------------------
// CLaunchJavaView::DoActivateL(...)
// 
// ---------------------------------------------------------
//
void CLaunchJavaView::DoActivateL(
   const TVwsViewId& /*aPrevViewId*/,TUid /*aCustomMessageId*/,
   const TDesC8& /*aCustomMessage*/)
    {
    if (!iContainer)
        {
        iContainer = new (ELeave) CLaunchJavaContainer;
        iContainer->SetMopParent(this);
        iContainer->ConstructL( ClientRect() );
        AppUi()->AddToStackL( *this, iContainer );
        } 
   }

// ---------------------------------------------------------
// CLaunchJavaView::DoDeactivate()
// 
// ---------------------------------------------------------
//
void CLaunchJavaView::DoDeactivate()
    {
    if ( iContainer )
        {
        AppUi()->RemoveFromViewStack( *this, iContainer );
        }
    
    delete iContainer;
    iContainer = NULL;
    }

void CLaunchJavaView::DoLaunchL()
    {
	RApaLsSession apa;

	User::LeaveIfError( apa.Connect() );
	CleanupClosePushL( apa );

	_LIT( KFileName, "c:\\Private\\102033E6\\MIDlets\\[10100b88]\\Rich.jar" );
	TUid KUid = { 0x101bba4b };
	TThreadId threadId;

	TInt err = KErrNone;

	TApaAppInfo info;
	err = apa.GetAppInfo( info, KUid );
	if ( err != KErrNone )
		{
		CEikonEnv::Static()->InfoWinL( _L("DoLaunchL"), _L("Error in getting AppInfo!") );
		CleanupStack::PopAndDestroy( ); // apa
		return;
		}

	// CEikonEnv::Static()->InfoWinL( _L("DoLaunchL"), info.iFullName );

	err = apa.StartDocument( _L(""), KUid, threadId);

	CleanupStack::PopAndDestroy( ); // apa
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -