알아두자/Tizen

버튼 이벤트를 통하여 라벨 텍스트를 바꾸는 법

Black_HellCat 2014. 7. 14. 23:28

//~Form.cpp를 불러온다.

#include "EventAppForm.h"

#include "AppResourceId.h"


using namespace Tizen::Base;

using namespace Tizen::App;

using namespace Tizen::Ui;

using namespace Tizen::Ui::Controls;


EventAppForm::EventAppForm(void)

{

}


EventAppForm::~EventAppForm(void)

{

}


bool

EventAppForm::Initialize(void)

{

result r = Construct(IDL_FORM);

TryReturn(r == E_SUCCESS, false, "Failed to construct form");


return true;

}

result

EventAppForm::OnInitializing(void)

{

result r = E_SUCCESS;


// TODO: Add your initialization code here


// Setup back event listener

SetFormBackEventListener(this);


// Get a button via resource ID

Tizen::Ui::Controls::Button* pButtonOk = static_cast< Button* >(GetControl(IDC_BUTTON_OK));

if (pButtonOk != null)

{

pButtonOk->SetActionId(IDA_BUTTON_OK);

pButtonOk->AddActionEventListener(*this);

}


return r;

}


result

EventAppForm::OnTerminating(void)

{

result r = E_SUCCESS;


// TODO: Add your termination code here


return r;

}


void

EventAppForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)

{

switch(actionId)

{

case IDA_BUTTON_OK:

{

AppLog("OK Button is clicked!\n");

//추가된 부분 (버튼 추가), GetControl에서 폼 위에 배치한 Label 객체를 불러옴

Label *pLabel = static_cast<Label*>(GetControl(L"IDC_LABEL1"));

//버튼이 눌린다면

if(pLabel!=null)

{

//라벨의 텍스트를 바꿈

pLabel->SetText(L"I'm Fine");

RequestRedraw();

}

}

break;

default:

break;

}

}


void

EventAppForm::OnFormBackRequested(Tizen::Ui::Controls::Form& source)

{

UiApp* pApp = UiApp::GetInstance();

AppAssert(pApp);

pApp->Terminate();

}