> From: George Aslanis
>
> Using CW7 on Visor 3.1. I have several fields which are editable and/or
> visible depending on buttons a user might select. I can not force the
> fields "invisible", they are allows visible.
>
> I have tried
> FrmHideObject(frm,fld);
> ptrField->attr.visible=false;
>
> FrmDrawForm(frm);
>
Prior to Palm OS 3.2, FrmHideObject didn't set the usable bit to false.
However, it did set the visible bit to false. FrmDrawForm should not be
necessary. FrmHideObject erases the field. Try this:
/***********************************************************************
* FUNCTION: HideField
* DESCRIPTION: Hides the fldID field on the form pointed to by frmP
***********************************************************************/
static void HideField(FormPtr frmP, UInt16 fldID)
{
UInt32 romVersion;
UInt16 index = FrmGetObjectIndex(frmP, fldID);
FieldPtr fldP;
FtrGet(sysFtrCreator, sysFtrNumROMVersion, &romVersion);
if (romVersion < sysMakeROMVersion(3,2,0,sysROMStageRelease,0))
{
// reset usable bit
fldP = (FieldPtr)FrmGetObjectPtr(frmP, index);
fldP->attr.usable = 0;
}
FrmHideObject(frmP, index);
}
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/