Partilhar via


Rotinas de troca dos dados da caixa de diálogo padrão

Este tópico lista as rotinas de troca de dados de diálogo padrão (DDX) usadas para controles de diálogo MFC comuns.

Observação

As rotinas de troca de dados de diálogo padrão são definidas no arquivo de cabeçalho afxdd_.h. No entanto, os aplicativos devem incluir afxwin.h.

Funções DDX

Nome Descrição
DDX_CBIndex Inicializa ou recupera o índice da seleção atual de um controle de caixa de combinação.
DDX_CBString Inicializa ou recupera o conteúdo atual do campo de edição de um controle de caixa de combinação.
DDX_CBStringExact Inicializa ou recupera o conteúdo atual do campo de edição de um controle de caixa de combinação.
DDX_Check Inicializa ou recupera o estado atual de um controle de caixa de seleção.
DDX_Control Coloca em subclasse um determinado controle em uma caixa de diálogo.
DDX_DateTimeCtrl Inicializa ou recupera dados de data e/ou hora de um controle seletor de data e hora.
DDX_IPAddress Inicializa ou recupera o valor atual de um controle de endereço IP.
DDX_LBIndex Inicializa ou recupera o índice da seleção atual de um controle de caixa de listagem.
DDX_LBString Inicializa ou recupera a seleção atual dentro de um controle de caixa de listagem.
DDX_LBStringExact Inicializa ou recupera a seleção atual dentro de um controle de caixa de listagem.
DDX_ManagedControl Cria um controle .NET que corresponde à ID do recurso do controle.
DDX_MonthCalCtrl Inicializa ou recupera o valor atual de um controle de calendário de mês.
DDX_Radio Inicializa ou recupera o índice baseado em 0 do controle de rádio que está atualmente verificado em um grupo de controle de rádio.
DDX_Scroll Inicializa ou recupera a posição atual do elevador de um controle de rolagem.
DDX_Slider Inicializa ou recupera a posição atual do elevador de um controle deslizante.
DDX_Text Inicializa ou recupera o valor atual de um controle de edição.

DDX_CBIndex

A DDX_CBIndex função gerencia a transferência de dados entre um controle de caixa de int combinação em uma caixa de diálogo, modo de formulário ou objeto de modo de exibição de controle e um int membro de dados da caixa de diálogo, modo de exibição de formulário ou objeto de modo de exibição de controle.

void AFXAPI DDX_CBIndex(
    CDataExchange* pDX,
    int nIDC,
    int& index);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de combinação associado à propriedade de controle.

index
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_CBIndex é chamado, index é definido como o índice da seleção da caixa de combinação atual. Se nenhum item estiver selecionado, index será definido como 0.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_CBString

A função DDX_CBString gerencia a transferência de dados CString entre o controle de edição de um controle de caixa de combinação em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados CString da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_CBString(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de combinação associado à propriedade de controle.

value
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_CBString é chamado, value é definido como a seleção da caixa de combinação atual. Se nenhum item estiver selecionado, value será definido como uma cadeia de caracteres de comprimento zero.

Observação

Se a caixa de combinação for uma caixa de listagem suspensa, o valor trocado será limitado a 255 caracteres.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_CBStringExact

A função DDX_CBStringExact gerencia a transferência de dados CString entre o controle de edição de um controle de caixa de combinação em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados CString da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_CBStringExact(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de combinação associado à propriedade de controle.

value
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_CBStringExact é chamado, value é definido como a seleção da caixa de combinação atual. Se nenhum item estiver selecionado, value será definido como uma cadeia de caracteres de comprimento zero.

Observação

Se a caixa de combinação for uma caixa de listagem suspensa, o valor trocado será limitado a 255 caracteres.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_Check

A função DDX_Check gerencia a transferência de dados int entre um controle de caixa de seleção em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados int da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_Check(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de seleção associado à propriedade de controle.

value
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_Check é chamado, value é definido como o estado atual do controle da caixa de seleção. Para obter uma lista dos valores de estado possíveis, confira BM_GETCHECK no SDK do Windows.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_Control

A função DDX_Control coloca em subclasse o controle, especificado por nIDC, da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_Control(
    CDataExchange* pDX,
    int nIDC,
    CWnd& rControl);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange.

nIDC
A ID do recurso do controle a ser colocado em subclasse.

rControl
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle relacionada ao controle especificado.

Comentários

O objeto pDX é fornecido pela estrutura quando a função DoDataExchange é chamada. Portanto, DDX_Control só deve ser chamado dentro de sua substituição de DoDataExchange.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_DateTimeCtrl

A função DDX_DateTimeCtrl gerencia a transferência de dados de data e/ou hora entre um controle seletor de data e hora ( CDateTimeCtrl) em uma caixa de diálogo ou objeto de exibição de formulário e um membro de dados CTime ou COleDateTime da caixa de diálogo ou objeto de exibição de formulário.

void AFXAPI DDX_DateTimeCtrl(
    CDataExchange* pDX,
    int nIDC,
    CTime& value);

void AFXAPI DDX_DateTimeCtrl(
    CDataExchange* pDX,
    int nIDC,
    COleDateTime& value);

void AFXAPI DDX_DateTimeCtrl(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção. Você não precisa excluir esse objeto.

nIDC
A ID do recurso do controle seletor de data e hora associado à variável de membro.

value
Nas duas primeiras versões, uma referência a uma variável de membro CTime ou COleDateTime, caixa de diálogo, exibição de formulário ou objeto de exibição de controle com o qual os dados são trocados. Na terceira versão, uma referência a um objeto de exibição de controle de membro de dados CString.

Comentários

Quando DDX_DateTimeCtrl é chamado, value é definido como o estado atual do controle de seletor de data e hora ou o controle é definido como value, dependendo da direção da troca.

Na terceira versão acima, DDX_DateTimeCtrl gerencia a transferência de dados CString e um membro de dados CString do objeto de exibição de controle. A cadeia de caracteres é formatada usando as regras da localidade atual para formatar datas e horas.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_ManagedControl

Cria um controle .NET que corresponde à ID do recurso do controle.

Sintaxe

template <typename T>
void DDX_ManagedControl(
   CDataExchange* pDX,
   int nIDC,
   CWinFormsControl<T>& control );

Parâmetros

pDX
Um ponteiro para um objeto CDataExchangeClass. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle associado à propriedade de controle.

control
Uma referência a um objeto CWinFormsControlClass.

Comentários

DDX_ManagedControl chama CWinFormsControl::CreateManagedControl para criar um controle que corresponda à ID de controle de recurso. Use DDX_ManagedControl para criar controles a partir de IDs do recurso em CDialog::OnInitDialog. Para a troca de dados, você não precisa usar as funções DDX/DDV com controles Windows Forms.

Para mais informações, veja Como fazer a associação de dados DDX/DDV aos Windows Forms.

Requisitos

Cabeçalho: afxwinforms.h

DDX_IPAddress

A função DDX_IPAddress gerencia a transferência de dados entre um controle de endereço IP e um membro de dados do objeto de exibição de controle.

void AFXAPI DDX_IPAddress(
    CDataExchange* pDX,
    int nIDC,
    DWORD& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle de endereço IP associado à propriedade de controle.

value
Uma referência ao DWORD que contém o valor de quatro campos do controle de endereço IP. Os campos são preenchidos ou lidos da seguinte forma.

Campo Bits que contêm o valor do campo
3 0 a 7
2 8 até 15
1 16 até 23
0 24 até 31

Use o Win32 IPM_GETADDRESS para ler o valor ou use IPM_SETADDRESS para preencher o valor. Essas mensagens são descritas no SDK do Windows.

Comentários

Quando DDX_IPAddress é chamado, value é lido do controle endereço IP ou value é gravado no controle, dependendo da direção da troca.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_LBIndex

A função DDX_LBIndex gerencia a transferência de dados int entre um controle de caixa de listagem em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados int da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_LBIndex(
    CDataExchange* pDX,
    int nIDC,
    int& index);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de listagem associado à propriedade de controle.

index
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_LBIndex é chamado, index é definido como o índice da seleção da caixa de listagem atual. Se nenhum item estiver selecionado, index será definido como 1.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_LBString

A função DDX_LBString gerencia a transferência de dados CString entre um controle de caixa de listagem em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados CString da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_LBString(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de listagem associado à propriedade de controle.

value
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_LBString é chamado para transferir dados para um controle de caixa de listagem, o primeiro item no controle cujo início corresponde a value é selecionado. (Para corresponder ao item inteiro em vez de apenas um prefixo, use DDX_LBStringExact.) Se não houver correspondências, nenhum item será selecionado. A correspondência não diferencia maiúsculas de minúsculas.

Quando DDX_LBString é chamado para transferir dados de um controle de caixa de listagem, value é definido como a seleção da caixa de listagem atual. Se nenhum item estiver selecionado, value será definido como uma cadeia de caracteres de comprimento zero.

Observação

Se a caixa de listagem for uma caixa de listagem suspensa, o valor trocado será limitado a 255 caracteres.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_LBStringExact

A função DDX_CBStringExact gerencia a transferência de dados CString entre o controle de edição de um controle de caixa de listagem em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados CString da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_LBStringExact(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da caixa de listagem associado à propriedade de controle.

value
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_LBStringExact é chamado para transferir dados para um controle de caixa de listagem, o primeiro item no controle que corresponde a value é selecionado. (Para corresponder apenas a um prefixo em vez de todo o item, use DDX_LBString.) Se não houver correspondências, nenhum item será selecionado. A correspondência não diferencia maiúsculas de minúsculas.

Quando DDX_CBStringExact é chamado para transferir dados de um controle de caixa de listagem, value é definido como a seleção da caixa de listagem atual. Se nenhum item estiver selecionado, value será definido como uma cadeia de caracteres de comprimento zero.

Observação

Se a caixa de listagem for uma caixa de listagem suspensa, o valor trocado será limitado a 255 caracteres.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_MonthCalCtrl

A função DDX_MonthCalCtrl gerencia a transferência de dados de data entre um controle de calendário de mês ( CMonthCalCtrl) em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados CTime ou COleDateTime da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_MonthCalCtrl(
    CDataExchange* pDX,
    int nIDC,
    CTime& value);

void AFXAPI DDX_MonthCalCtrl(
    CDataExchange* pDX,
    int nIDC,
    COleDateTime& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção. Você não precisa excluir esse objeto.

nIDC
A ID do recurso do controle de calendário de mês associado à variável de membro.

value
Uma referência a uma variável membro CTime ou COleDateTime da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Observação

O controle gerencia apenas um valor de data. Os campos de hora no objeto time são definidos para refletir a hora de criação da janela de controle ou qualquer hora definida no controle com uma chamada para CMonthCalCtrl::SetCurSel.

Quando DDX_MonthCalCtrl é chamado, value é definido como o estado atual do controle de calendário do mês.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_Radio

A função DDX_Radio gerencia a transferência de dados int entre um grupo de controle de opção em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados int da caixa de diálogo, exibição de formulário ou objeto de exibição de controle. O valor do membro de dados int é determinado de acordo com qual botão de opção dentro do grupo está selecionado.

void AFXAPI DDX_Radio(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do primeiro controle de opção do grupo.

value
Uma referência a uma variável membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_Radio é chamado, value é definido como o estado atual do grupo de controle de opção. O valor é definido como um índice baseado em 0 do controle de opção que está verificado no momento ou -1 se nenhum controle de opção for verificado.

Por exemplo, no caso de o primeiro botão de opção no grupo ser verificado (o botão com o estilo WS_GROUP) o valor do membro int será 0, e assim por diante.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_Scroll

A função DDX_Scroll gerencia a transferência de dados int entre um controle de barra de rolagem em uma caixa de diálogo, exibição de formulário ou objeto de exibição de controle e um membro de dados int da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_Scroll(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle da barra de rolagem associada à propriedade de controle.

value
Uma referência a uma variável de membro da caixa de diálogo, exibição de formulário ou objeto de exibição de controle com a qual os dados são trocados.

Comentários

Quando DDX_Scroll é chamado, value é definido como a posição atual do elevador do controle. Para obter mais informações sobre os valores associados à posição atual do elevador do controle, confira GetScrollPos no SDK do Windows.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

DDX_Slider

A função DDX_Slider gerencia a transferência de dados int entre um controle deslizante em uma caixa de diálogo ou exibição de formulário e um membro de dados int da caixa de diálogo ou objeto de exibição de formulário.

void AFXAPI DDX_Slider(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID do recurso do controle deslizante.

value
Uma referência ao valor a ser trocado. Esse parâmetro mantém ou define a posição atual do controle deslizante.

Comentários

Quando DDX_Slider é chamado, value é definido como a posição atual do elevador do controle ou o valor recebe a posição, dependendo da direção da troca.

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo. Para obter informações sobre controles deslizantes, confira Usar CSliderCtrl.

Requisitos

Cabeçalho afxdd_.h

DDX_Text

A função DDX_Text gerencia a transferência de dados int, UINT, long, DWORD, CString, float ou double entre um controle de edição em uma caixa de diálogo, exibição de formulário ou exibição de controle e um membro de dados CString da caixa de diálogo, exibição de formulário ou objeto de exibição de controle.

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    BYTE& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    short& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    int& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    UINT& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    long& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    DWORD& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    float& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    double& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    COleCurrency& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    COleDateTime& value);

Parâmetros

pDX
Um ponteiro para um objeto CDataExchange. A estrutura fornece esse objeto para estabelecer o contexto da troca de dados, incluindo sua direção.

nIDC
A ID de um controle de edição na caixa de diálogo, exibição de formulário ou no objeto de exibição de controle.

value
Uma referência a um membro de dados na caixa de diálogo, exibição de formulário ou objeto de exibição de controle. O tipo de dados value depende de quais das versões sobrecarregadas de DDX_Text você usa.

Comentários

Para obter mais informações sobre a DDX, confira Validação e troca de dados de caixa de diálogo.

Requisitos

Cabeçalho afxdd_.h

Confira também

Rotinas de validação dos dados da caixa de diálogo padrão
Macros e Globais
CWinFormsControl::CreateManagedControl
CDialog::OnInitDialog