【发布时间】:2011-11-08 08:54:46
【问题描述】:
我是 bada 编程的新手。我有一个问题,是否可以让bada中的按钮事件处理程序调出另一种形式?如果是这样,我该怎么做?非常感谢您!
【问题讨论】:
标签: c++ forms button event-handling bada
我是 bada 编程的新手。我有一个问题,是否可以让bada中的按钮事件处理程序调出另一种形式?如果是这样,我该怎么做?非常感谢您!
【问题讨论】:
标签: c++ forms button event-handling bada
是的,
将 ActionEventListener 添加到您的按钮,
pButton = new Button();
pButton->Construct(Rectangle(176, 593, 128, 46), L"");
pButton->SetActionId(IDC_ACTION);
pButton->AddActionEventListener(*this);
AddControl(*pButton);
在 OnActionEventListener() 中
创建您的表单
void
Form1::OnActionPerformed(const Control& source, int actionId)
{
case IDC_ACTION:
{
Form2* pExeForm = new Form2();
pExeForm->Initialize();
r = pFrame->AddControl(*pExeForm);
r = pFrame->SetCurrentForm(*pExeForm);
r = pExeForm->Draw();
r = pExeForm->Show();
}
break;
}
【讨论】:
当您按下按钮并调用 OnActionPerformed 并执行时,制作一个可以充当表单管理器的控制器 pFormMgr->SendUserEvent(FormMgr::FORM_ID_YOU_WANT_TO_CALL, null); 这将在您的表单管理器中调用 OnUserEventReceivedN。 现在,调用你的表单,
NewForm* pNewForm = new NewForm();
pNewForm ->Construct();
pFrame->AddControl(*pNewForm );
pFrame->SetCurrentForm(*pNewForm );
pFrame->RequestRedraw();
【讨论】: