DFX_Text

void &AFXAPI DFX_Text ( CDaoFieldExchange * pFX, LPCTSTR szName, CStringamp ; valeur, int nPreAllocLength = AFX_DAO_TEXT_DEFAULT_SIZE, DWORD dwBindOptions = AFX_DAO_ENABLE_FIELD_CACHE );

Paramètres

pFX

Pointeur vers un objet de classe CDaoFieldExchange. Cet objet contient des informations pour définir le contexte pour chaque appel de la fonction. Pour plus d'informations sur les opérations d'un objet CDaoFieldExchange peut spécifier, consultez l'article DAO Record Field Exchange : fonctionnement de DFX dans le Guide du programmeur Visual C++.

szName

Le nom d'une colonne de données.

valeur

La valeur stockée dans le membre de données indiqué — la valeur devant être transférés. Pour un transfert du jeu d'enregistrements de la source de données, la valeur, de type CString, est tirée de la donnée membre spécifiée. Pour un transfert de source de données pour le jeu d'enregistrements, la valeur est stockée dans le membre de données spécifié.

nPreAllocSize

Le cadre pré-alloue cette quantité de mémoire. Si vos données soient plus grandes, le cadre sera attribué plus d'espace que nécessaire. Pour améliorer les performances, définir cette taille à une valeur suffisamment importante pour prévenir les réaffectations.

dwBindOptions

Une option qui vous permet de profiter d'un double mécanisme de mise en mémoire tampon du MFC pour la détection des champs de jeu d'enregistrements qui ont été modifiés. La valeur par défaut, AFX_DAO_ENABLE_FIELD_CACHE, utilise la double mise en tampon. L'autre valeur possible est AFX_DAO_DISABLE_FIELD_CACHE. Si vous spécifiez cette valeur, MFC ne fait aucune vérification sur ce champ. Vous devez appeler SetFieldDirty et SetFieldNull vous-même.

Ces options sont expliquées plus loin dans l'article DAO Record Field Exchange : Double mise en mémoire tampon Records dans le Guide du programmeur Visual C++.

&Notenbsp ;  Vous pouvez contrôler si les données sont doubles tampon par défaut en définissant CDaoRecordset::m_bCheckCacheForDirtyFields.

Remarques

La fonction DFX_Text transfère les données de CString entre les données membres de champ d'un objet CDaoRecordset et les colonnes d'un dossier sur la source de données. Données sont mappées entre type DAO_CHAR en DAO (ou, si le symbole _UNICODE est défini, DAO_WCHAR) et dans le jeu d'enregistrements de type CString.

Exemple

Cet exemple montre plusieurs appels à DFX_Text. Notez également les deux appels à CDaoFieldExchange::SetFieldType. ClassWizard écrit normalement le deuxième appel à SetFieldType et ses appels DFX associés. Vous devez écrire le premier appel et son appel DFX . Il est recommandé que vous mettez tous les éléments de paramètre avant le "/ / {{AFX_FIELD_MAP" commentaire. Vous devez mettre les paramètres à l'extérieur les commentaires.

//Example pour DFX_Text
VOID CSections::DoFieldExchange (CDaoFieldExchange * pFX)
{
 nbsp ;  pFX - > SetFieldType(CDaoFieldExchange::param) ;
    DFX_Text (pFX, « Nom », m_strNameParam) ;
    //{{AFX_FIELD_MAP(CSections)
    pFX - > SetFieldType(CDaoFieldExchange::outputColumn) ;
    DFX_Text (pFX, « CourseID », m_strCourseID) ;
    DFX_Text (pFX, « InstructorID », m_strInstructorID) ;
    DFX_Short (pFX, « LabFee », m_nRoomNo) ;
    DFX_Text (pFX, « LabFee », m_strSchedule) ;
    DFX_Short (pFX, « SectionNo », m_nSectionNo) ;
    DFX_Currency (pFX, « LabFee », m_currLabFee) ;
    //}}AFX_FIELD_MAP
}

Voir aussi  ;DFX_Bool, DFX_Long, DFX_Currency, DFX_Short, DFX_Single, DFX_Double, DFX_DateTime, DFX_Byte, DFX_Binary, DFX_LongBinary, CDaoFieldExchange::SetFieldType

Index