You unlock hFrom prematurely, and you do not allocate temp.

try this:
FldSetTextPtr(field, From);   // no need to copy
MemHandleUnlock(hFrom); // now unlock handle

> I am obviously overlooking something. Using the code below, I expect
> to see a value in my non-editable field when I press my
> MainConvertButton. However, I do not. What have I missed?
> It seems to me that I am using FldSetTextPtr (see ----> in code
> below) as documented.
>
> Thanks
>
>
> static Boolean MainFormHandleEvent(EventPtr eventP)
> {
> Boolean handled = false;
> FormPtr frmP;
>
> FieldPtr  field;
> Handle   hFrom;
> CharPtr   From;
> CharPtr   temp;
>
> frmP = FrmGetActiveForm();
>
>
>    switch (eventP->eType)
>    {
>    case menuEvent:
>  return MainFormDoCommand(eventP->data.menu.itemID);
>
>    case frmOpenEvent:
>  frmP = FrmGetActiveForm();
>  MainFormInit( frmP);
>  FrmDrawForm ( frmP);
>  FrmSetFocus(frmP, FrmGetObjectIndex(frmP, MainConvertFromField));
>  handled = true;
>  break;
>
>    case ctlSelectEvent:
>  switch (eventP->data.ctlSelect.controlID)
>  {
>     case MainConvertButton:
>     // Get From field
>     field = GetObjectPtr(MainConvertFromField);
>     hFrom = FldGetTextHandle(field);
>     if (hFrom) {
>               From = MemHandleLock(( void *) hFrom);
>
>        // Release lock
>               MemHandleUnlock((void *) hFrom);
>
>        // Set To field
>        field=
> FrmGetObjectPtr(frmP,FrmGetObjectIndex(frmP,MainConvertToField));
>        StrCopy(temp,From);
> ---->       FldSetTextPtr (field, temp);
>        FldDrawField (field);
>     }  //  END OF if (hFrom)
>
>     handled = true;
>     break;
>    } //  END OF switch (eventP->data.ctlSelect.controlID)
>
> default:
> break;
>
> }  //  END OF switch (eventP->eType)
>
>  return handled;
> }
>
>
>
>
> --
> For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/tech/support/forums/
>


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

Reply via email to