Hi Christian

I noticed in your sample code a call to VNStrCpy, where do I find this routine ?

Is it a routine of yours ?

Thanks 
NG

Terry Young wrote:

>I want to display the time on a form. I have several questions:
>1 - What event (or interrupt) do I look for to update the time
>    in the event loop.
>2 - Is there a way to set the interval of the event.
>3 - This has to be backward compatable to PalmOS 2.0
>4 - Does anyone have any sample code I could look at.
>
>Thanks in advance.
>
>Terry
>
>  
>
Well it seems I can make it a little easier for you.
I use in one of my Apps a little funktion, that returns the current time
already formatted in a little String:

char* dbaGetTimeStr(char dateString[12], UInt16 which)
{
    DateTimeType    date;
    UInt32                Zeit;
    UInt16                len,pos;
    char                    p[10],*cpos;
   

    Zeit = TimGetSeconds();
    pos=0;

    TimSecondsToDateTime(Zeit,&date);

    MemSet(dateString,StrLen(p),0);

    cpos= StrIToA(p,(date.hour));
  len = StrLen(p);
  len = VNStrCpy(&dateString[pos],p,len);
 
  MemSet(p,StrLen(p),0);
 
  pos = pos+len;
  len = VNStrCpy(&dateString[pos],":",(1*sizeof(char)));
  pos = pos+len;
 
  if(date.minute<10)
  {
      p[0]='0';
      cpos= StrIToA(&p[1],(date.minute));
    }
    else
      cpos= StrIToA(p,(date.minute));
  len = StrLen(p);
  len = VNStrCpy(&dateString[pos],p,len);
 
  if(which)
    {
      MemSet(p,StrLen(p),0);
 
      pos = pos+len;
      len = VNStrCpy(&dateString[pos],":",(1*sizeof(char)));
      pos = pos+len;
 
      if(date.second<10)
      {
          p[0]='0';
          cpos= StrIToA(&p[1],(date.second));
        }
        else
          cpos= StrIToA(p,(date.second));
      len = StrLen(p);
      len = VNStrCpy(&dateString[pos],p,len);
      pos=pos+len;               
    } 
   
  return (char*)dateString;

}

and as Brandon said you just have to say in your eventloop
EvtGetEvent(&event, ticks);

where ticks is the time you want the app to update your time.
I would suggest 6000 for an update every minute.
You just have to fetch the nilEvent in your eventhandler to call the
function and display the time in a field.

Christian

-- 

Enjoy the experience of software from downunder that keeps you on top.

  ..-_|\      Nigel Grant
/   OZ  \   Uni. SA
\ _.--._ /   PO Box 185 Adelaide
         v    South Australia 5096

.) .)
http://geocities.com/ngrant_com

Smile its free

-- 
For information on using the Palm Developer Forums, or to unsubscribe, please 
see http://www.palmos.com/dev/support/forums/

Reply via email to