--- Dave Mottorn wrote:
> Do you thing fields should be avoided
> in general?
No. Use a label if your text never changes. Or use
WinDrawChars in similar situations. Use a field when
you want to let the user enter text.
Here are two useful functions for changing field text
which have been posted to this forum in the past. You
may find them helpful.
static FieldPtr SetFieldTextFromHandle( UInt16
fieldID, MemHandle txtH, FormPtr frmP )
{
MemHandle oldTxtH;
FieldPtr fldP;
// get the field and a handle to its text
fldP = FrmGetObjectPtr( frmP, FrmGetObjectIndex(
frmP, fieldID ) );
ErrNonFatalDisplayIf( !fldP, "missing field" );
oldTxtH = FldGetTextHandle( fldP );
// set field to new text
FldSetTextHandle( fldP, txtH );
FldDrawField( fldP );
// free old MemHandle
if ( oldTxtH ) MemHandleFree( oldTxtH );
return fldP;
} // SetFieldTextFromHandle
static FieldPtr SetFieldTextFromStr( UInt16 fieldID,
Char *strP, FormPtr frmP )
{
MemHandle txtH;
txtH = MemHandleNew( StrLen( strP ) + 1 );
if ( !txtH )
return NULL;
StrCopy( MemHandleLock(txtH), strP );
MemHandleUnlock( txtH );
return SetFieldTextFromHandle( fieldID, txtH, frmP
);
} // SetFieldTextFromStr
__________________________________________________
Do You Yahoo!?
Check out Yahoo! Shopping and Yahoo! Auctions for all of
your unique holiday gifts! Buy at http://shopping.yahoo.com
or bid at http://auctions.yahoo.com
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/