Monday, May 21, 2012 : Article User : Register | Login
บทความ
Webboard
วีดีโอ
บทความจากเพื่อนๆ Guru
13
ในส่วนของ Datetime บน bada นั้น ผมใช้ tool Editdate ครับ ใช้ Listenner คือ IDateChangeEventListener จะมี function ให้ใช้ 2 ตัวคือ OnDateChanged และ OnDateChangeCanceled จะเป็นปุ่ม save กับ cancel ตามลำดับ และในส่วนของ เดือนนั้น จะเริ่มตั้งที่ เดือนที่ 0 - 11 นะครับ  ส่วนปีนั้น ถ้าจะทำให้เป็น คศ ต้องเอามาลบอีก 1900 ด้วยครับ ไม่รู้เหมือนกันว่าทำไม เมื่อเรา getDate ออกมาแล้ว จะได้รูปแบบเป็น เดือน / วัน / ปี ชม : นาที : วินาที  ส่วนจะทำ format นั้นก็ทำได้เหมือน C++ ทำปกติครับ โดยในตัวอย่างก็จะทำ format รูปแบบวันที่เป็น วัน เดือน ปี ครับ ส่วนวิธีการทำนั้น ผมไม่รู้ว่าใช้หลักการที่ถูกหรือเปล่านะครับ เพราะโดยส่วนตัวไม่เคยเขียน C++ แต่ก็ได้ผลออกมาเหมือนกันครับ

result

AppEditDateForm::OnInitializing(void)

{

      result r = E_SUCCESS;

      __pDateTimePicker = static_cast<EditDate *>(GetControl(L"IDC_EDITDATE1"));

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

 

      if (__pDateTimePicker != null)

      {

            __pDateTimePicker->AddDateChangeEventListener(*this);

      }

      return r;

}


จากข่างบน เป็นในส่วนของ function OnInitialzing ครับ เป็นการ addControl และ Listenner ให้กับค่านั้นๆด้วย ในที่นี้ผมใช้ Edittime และส่งค่าให้ label เพื่อแสดงวันเดือนปีที่ get ออกมาได้

#ifndef _APPEDITDATEFORM_H_

#define _APPEDITDATEFORM_H_

 

#include <FBase.h>

#include <FUi.h>

 

class AppEditDateForm :

      public Osp::Ui::Controls::Form,

      public Osp::Ui::IDateChangeEventListener

{

 

// Construction

public:

      AppEditDateForm(void);

      virtual ~AppEditDateForm(void);

      bool Initialize(void);

 

// Implementation

protected:

      Osp::Ui::Controls::EditDate *__pDateTimePicker;

      Osp::Ui::Controls::Label *__pLabelDate;

 

public:

      virtual result OnInitializing(void);

      virtual result OnTerminating(void);

 

      virtual void OnDateChanged(const Control&, int year, int month, int day);

      virtual void OnDateChangeCanceled(const Control& source);

};

 

#endif      //_APPEDITDATEFORM_H_




จากข้างบน เป็นการสั่งการทำงาน เมื่อกดปุ่ม save และ cancel เมื่อเรียกใช้ EditDate ครับ ตามลำดับครับ
โดยเวลา กดปุ่ม Save นั้น จะมีการจัดรูปแบบ Format DateTime ด้วยครับ

อันนี้เป็นรูปแบบของหน้า Edit date ครับ
ผลที่ได้ออกมาจากการกด save
ผลที่ได้ออกมาจากการกด Cancel

Post Rating

Comments

There are currently no comments, be the first to post one.

Post Comment

Only registered users may post comments.
Home | Article | Webboard | Video | Blog | Showcase | News
Copyright 2010 by devguru.mobi