voici mon form:
FORM ID ImmForm AT (0 0 160 160)
USABLE
BEGIN
LABEL "Agent: " AUTOID AT (0 0)
FIELD ID FormNameFld AT (0 PREVBOTTOM+10 AUTO AUTO)LEFTALIGN EDITABLE UNDERLINED MAXCHARS 20
LABEL "Secteur " AUTOID AT (120 0)
LIST "Paris" " Reuil" "Bagneux" "TOTO" ID ListVilles AT (1 25 158 103)
BUTTON "VALIDER" ID ImmValidBt AT (CENTER PREVBOTTOM+10 AUTO AUTO) FRAME
END
je voudrait donc initialiser le field FormNaameFld avec cette fonction:
static FieldPtr SetField(UInt16 formID, UInt16 fieldID, MemPtr str)
{
FormPtr frm;
FieldPtr fld;
UInt16 obj;
CharPtr p;
VoidHand h;
frm = FrmGetFormPtr(formID);
obj = FrmGetObjectIndex(frm, fieldID);
fld = (FieldPtr)FrmGetObjectPtr(frm, obj);
h = (VoidHand)FldGetTextHandle(fld);
if (h == NULL)
{
h = MemHandleNew (FldGetMaxChars(fld)+1);
ErrFatalDisplayIf(!h, "No Memory");
}
p = (CharPtr)MemHandleLock(h);
StrCopy(p, str);
MemHandleUnlock(h);
FldSetTextHandle(fld, (Handle)h);
}
et je le fait avec l'appel suivant:
SetField(ImmForm, FormNameFld, "toto");
et la lorsque je lance l'appli au moment j'affiche le form jme tape une grosse erreur dans la tronche, je ne comprend pas pourkoi, soyer indulgent avec moi et rapellez vous vos debut dans la pogrammation palm merci.