privatevoid &AFXAPI DFX_Text ( CDaoFieldExchange * pFX, LPCTSTR szName, CStringamp; valor, int nPreAllocLength = AFX_DAO_TEXT_DEFAULT_SIZE, DWORD dwBindOptions = AFX_DAO_ENABLE_FIELD_CACHE );
Parâmetros
pFX
Um ponteiro para um objeto de classe CDaoFieldExchange. Este objeto contém informações para definir o contexto de cada chamada da função. Para obter mais informações sobre as operações de um objeto CDaoFieldExchange pode especificar, consulte o artigo DAO registro campo Exchange: como funciona o DFX no Guia do programador do Visual C++.
szName
O nome de uma coluna de dados.
valor
O valor armazenado no membro de dados indicado — o valor a ser transferido. Para uma transferência de conjunto de registros para origem de dados, o valor, do tipo CString, é obtido do membro de dados especificado. Para uma transferência de fonte de dados ao conjunto de registros, o valor é armazenado no membro de dados especificado.
nPreAllocSize
A estrutura preallocates essa quantidade de memória. Se os dados forem maiores, o quadro será alocado mais espaço conforme necessário. Para um melhor desempenho, defina este tamanho para um valor grande o suficiente para evitar realocações.
dwBindOptions
Uma opção que permite a você tirar proveito do mecanismo de armazenamento em buffer duplo do MFC para detectar campos de conjunto de registros que foram alterados. O padrão, AFX_DAO_ENABLE_FIELD_CACHE, usa o buffer duplo. O outro valor possível é AFX_DAO_DISABLE_FIELD_CACHE. Se você especificar esse valor, MFC não faz nenhuma verificação neste campo. Você deve chamar SetFieldDirty e SetFieldNull você mesmo.
Essas opções são explicadas mais no artigo DAO registro campo Exchange: Double Buffering Records no Guia do programador do Visual C++.
&Notanbsp; Você pode controlar se dados são duplos em buffer por padrão pelo configuração CDaoRecordset:: M_bcheckcachefordirtyfields.
Observações
A função DFX_Text transfere dados CString entre os membros de dados campo de um objeto de CDaoRecordset e colunas de um registro na fonte de dados. Dados são mapeados entre tipo DAO_CHAR no DAO (ou, se o símbolo Unicode estiver definido, DAO_WCHAR) e digite CString no conjunto de registros.
Exemplo
Este exemplo mostra várias chamadas para DFX_Text. Observe também as duas chamadas para CDaoFieldExchange::SetFieldType. Normalmente, ClassWizard grava a segunda chamada para SetFieldType e seus associadas DFX chamadas. Você deve escrever a primeira chamada e a chamada DFX . É recomendável que você coloque quaisquer itens do parâmetro antes do "/ / {{AFX_FIELD_MAP" comentário. Você deve colocar parâmetros fora comentários.
//Exemplo para DFX_Text
privatevoid CSections::DoFieldExchange (CDaoFieldExchange pFX)
{
nbsp; pFX - > SetFieldType(CDaoFieldExchange::param);
DFX_Text (pFX, "Nome", 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
}
Co&nsulte tambémnbsp;DFX_Bool, DFX_Long, DFX_Currency, DFX_Short, DFX_Single, DFX_Double, DFX_DateTime, DFX_Byte, DFX_Binary, DFX_LongBinary, CDaoFieldExchange::SetFieldType