seven333
09/05/2005 à 21:04
Bonjour à tous,
J'ai un gros problème lié au Field, en effet mon programme met un texte défini dans un Field par la fonction FldSetTextPtr, quand j'essaie de modifier ce champ l'émulator plante complétement en me disant unlocated chunk of memory !
J'ai regardé sur le forum en mettant mes variables de texte en global, mais rien à faire ça ne marche toujours pas !
Merci de vos réponses !
Patrice
09/05/2005 à 21:08
Lis la doc sur FldSetTextPtr() : si je ne m'abuse il est indiqué clairement qu'il ne faut surtout pas l'utiliser pour un champ éditable !!!
Regarde plutôt du côté de FldSetTextHandle()
seven333
09/05/2005 à 21:16
J'avais peur de me compliquer la vie en passant par le handle, je teste ça tout de suite, merci pour ta réponse immédiate ?
Je suppose qu'il faut également déclaré les handle en global ?
seven333
09/05/2005 à 21:23
en Global déclaration
char * valeurString;
MemHandle memValeur;
modifReleve()
{
FieldPtr fl2;
memValeur = MemHandleNew(60);
valeurString = MemHandleLock(memValeur);
...récupère le pointeur sur mon field;
... Ici c le code pour récupérer ma valeur que je copie directement dans valeurString
FldSetTextHandle(fld2,memValeur);
FldDrawField(fld2);
...
}
voilà en gros le code, même avec le settexthandle j'ai toujours mon problème !
Patrice
10/05/2005 à 06:06
Si tu n'as pas déverrouillé (MemHandleUnlock()) le handle avant de l'affecter sur le champ, c'est normal.
seven333
10/05/2005 à 11:11
Je viens d'essayer de faire le MemHandleUnlock, j'ai bien ma valeur d'inscrite dans le champ, par contre quand j'essaie de cliquer dans le champ j'ai directement l'erreur unallocated chunk ok memory !
seven333
10/05/2005 à 11:17
CA MARCHE
J'avais oublié un détail, c'est à dire de ne pas libérer la mémoire !
Merci beaucoup !
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez
cliquer ici.