symbian s60 2nd(3th) 调用系统发送短信
symbian 札记 2010-03-15 14:22:32 阅读105 评论0 字号:大中小 订阅
在v2的时候如下:
在次感谢www.devdiv.net里愣愣大哥的帮忙:
现在整理如下:
头文件:
#include //CRichText
#include //KUidMsgTypeSMS
#include //CSendAppUi
在要跳转的视图的 头文件中定义成员变量:
CSendAppUi* iSendAppUi;
在下面函数中添加:
void CXXXView::ConstructL()
{
。。。。。
iSendAppUi = CSendAppUi::NewL(EShowTextForWard);//看下面HandleCommandL()函数中的case。
。。。。。
}
void CXXXView::HandleCommandL(TInt aCommand)
{
switch (aCommand)
{
case EShowTextForWard://转发-----EShowTextForWard这里就是上面构造CSendAppUi中的参数
{
CRichText* iRichText = CRichText::NewL(
iEikonEnv->SystemParaFormatLayerL(),
iEikonEnv->SystemCharFormatLayerL());
///填充的内容栏
TBuf<200> sendstr;
sendstr.Append(_L("sfdsfsdgfdhgkjhlkjlgrefbvdfngj"));
iRichText->InsertL(0, sendstr.Left(sendstr.Length()));
//填充号码栏
_LIT(phoneNum,"15310095899");
CDesCArrayFlat * realAddress = new (ELeave) CDesCArrayFlat(1);
CleanupStack::PushL( realAddress );
realAddress->AppendL( phoneNum );
//主要调用函数
iSendAppUi->CreateAndSendMessageL( KUidMsgTypeSMS,
iRichText,
NULL,
KNullUid,
realAddress,
NULL,
EFalse );
CleanupStack::PopAndDestroy(); // realAddress
delete iRichText;
break;
}
}
使用完 记得析构函数中处理:
if(iSendAppUi)
{
delete iSendAppUi;
iSendAppUi = NULL;
}
//、在v3的时候如下:
记得加上相应的头文件和lib
_LIT(KAddress, "15310095899");//电话号码
_LIT(KAlias, "fool");//昵称
_LIT(KBodyData, "This is the message body");//短信内容
CSendUi* sendAppUi = CSendUi::NewLC();
CMessageData* message = CMessageData::NewLC();
CRichText* richText = CRichText::NewL(iEikonEnv->SystemParaFormatLayerL(),iEikonEnv->SystemCharFormatLayerL());
CleanupStack::PushL(richText);
message->AppendToAddressL(KAddress,KAlias);
richText->InsertL(0, KBodyData);
message->SetBodyTextL(richText);
sendAppUi->CreateAndSendMessageL(KUidMsgTypeSMS, message, KNullUid, ETrue);
CleanupStack::PopAndDestroy(3);
FROM:http://createmiracle.blog.163.com/blog/static/101987475201021522232190/
symbian s60 2nd(3th) 调用系统发送短信
最新推荐文章于 2025-08-09 13:04:47 发布