Partilhar via


Classe COleDBRecordView

Uma exibição que mostra registros de banco de dados em controles.

Sintaxe

class COleDBRecordView : public CFormView

Membros

Construtores Protegidos

Nome Descrição
COleDBRecordView::COleDBRecordView Constrói um objeto COleDBRecordView.

Métodos públicos

Nome Descrição
COleDBRecordView::OnGetRowset Retorna um valor HRESULT padrão.
COleDBRecordView::OnMove Atualizações o registro atual (se sujo) na fonte de dados e, em seguida, passa para o registro especificado (próximo, anterior, primeiro ou último).

Comentários

A exibição é uma exibição de formulário conectada diretamente a um objeto CRowset. O modo de exibição é criado com base em um recurso de modelo de caixa de diálogo e exibe os campos do objeto CRowset nos controles do modelo de caixa de diálogo. O objeto COleDBRecordView usa a DDX (troca de dados de caixa de diálogo) e a funcionalidade de navegação interna para CRowset para automatizar a movimentação de dados entre os controles no formulário e os campos do conjunto de linhas. COleDBRecordView também fornece uma implementação padrão para mover para o primeiro, próximo, anterior ou último registro e uma interface para atualizar o registro atualmente em exibição.

Você pode usar funções DDX com COleDbRecordView para obter dados diretamente do conjunto de registros do banco de dados e exibi-los em um controle de caixa de diálogo. Você deve usar os métodos DDX_* (como DDX_Text), não as funções DDX_Field* (como DDX_FieldText) com COleDbRecordView. DDX_FieldText não funcionará com COleDbRecordView porque DDX_FieldText usa um argumento adicional de tipo CRecordset* (para CRecordView) ou CDaoRecordset* (para CDaoRecordView).

Observação

Se você estiver trabalhando com as classes DAO (Objetos de Acesso a Dados) em vez das classes de Modelo de Consumidor OLE DB, use a classe CDaoRecordView. Para obter mais informações, confira o artigo Visão geral: programação de banco de dados.

COleDBRecordView mantém o controle da posição do usuário no conjunto de linhas para que o modo de exibição de registro possa atualizar a interface do usuário. Quando o usuário se move para o final do conjunto de linhas, o modo de exibição de registro desabilita objetos de interface do usuário, como itens de menu ou botões da barra de ferramentas, para se mover mais na mesma direção.

Para mais informações sobre classes de conjunto de linhas, confira o artigo Como usar modelos de consumidor OLE DB .

Hierarquia de herança

CObject

CCmdTarget

CWnd

CView

CScrollView

CFormView

COleDBRecordView

Requisitos

Cabeçalho: afxoledb.h

COleDBRecordView::COleDBRecordView

Constrói um objeto COleDBRecordView.

COleDBRecordView(LPCTSTR lpszTemplateName);
COleDBRecordView(UINT nIDTemplate);

Parâmetros

lpszTemplateName
Contém uma cadeia de caracteres terminada em nulo que é o nome de um recurso de modelo de caixa de diálogo.

nIDTemplate
Contém o número de ID de um recurso de modelo de caixa de diálogo.

Comentários

Ao criar um objeto de um tipo COleDBRecordView derivado, invoque um dos construtores para criar o objeto de exibição e identifique o recurso de caixa de diálogo no qual a exibição se baseia. Você pode identificar o recurso pelo nome (passe uma cadeia de caracteres como o argumento para o construtor) ou por sua ID (passe um inteiro sem sinal como o argumento).

Observação

Sua classe derivada deve fornecer um construtor próprio. No construtor, invoque o construtor, COleDBRecordView::COleDBRecordView, com o nome do recurso ou a ID como um argumento.

COleDBRecordView::OnGetRowset

Retorna um identificador para o objeto CRowset<> associado à exibição de registro.

virtual CRowset<>* OnGetRowset() = 0;

Valor de retorno

Um valor HRESULT padrão.

Comentários

Você deve substituir essa função de membro para construir ou obter um objeto de conjunto de linhas e retornar um identificador para ele. Se você declarar sua classe de exibição de registro com ClassWizard, o assistente gravará uma substituição padrão para você. A implementação padrão do ClassWizard retornará o identificador de conjunto de linhas armazenado na exibição de Registro, se houver um. Caso contrário, construirá um objeto de conjunto de linhas do tipo especificado com ClassWizard e chamará sua função de membro Open para abrir a tabela ou executar a consulta e retornará um identificador para o objeto.

Observação

Antes do MFC 7.0, OnGetRowset retornava um ponteiro para CRowset. Se você tiver um código que chama OnGetRowset, será necessário alterar o tipo de retorno para a classe com modelo CRowset<>.

Exemplo

CFrameWnd* pFrame = (CFrameWnd*)AfxGetMainWnd();
COleDBRecordView* pView = (COleDBRecordView*)pFrame->GetActiveView();

// CProductAccessor is a user-defined accessor class
CRowset<CAccessor<CProductAccessor>>* pRowSet =
(CRowset<CAccessor<CProductAccessor>>*)pView->OnGetRowset();

Para mais informações e exemplos, confira o artigo Exibições de registro: como usar uma exibição de registro.

COleDBRecordView::OnMove

Move para um registro diferente no conjunto de linhas e exibe seus campos nos controles da exibição de registro.

virtual BOOL OnMove(UINT nIDMoveCommand);

Parâmetros

nIDMoveCommand
Um dos seguintes valores de ID de comando padrão:

  • ID_RECORD_FIRST – mover para o primeiro registro no conjunto de registros.

  • ID_RECORD_LAST – mover para o último registro no conjunto de registros.

  • ID_RECORD_NEXT – mover para o próximo registro no conjunto de registros.

  • ID_RECORD_PREV – mover para o registro anterior no conjunto de registros.

Valor de retorno

Diferente de zero se a movimentação foi bem-sucedida; caso contrário, 0 se a solicitação de movimentação foi negada.

Comentários

A implementação padrão chama a função de membro Move apropriada do objeto CRowset associado ao modo de exibição de registro.

Por padrão, OnMove atualiza o registro atual na fonte de dados se o usuário o tiver alterado no modo de exibição de registro.

O Assistente de Aplicativo cria um recurso de menu com itens de menu Primeiro Registro, Último Registro, Próximo Registro e Registro Anterior. Se você selecionar a opção Barra de Ferramentas Encaixada, o Assistente de Aplicativo também criará uma barra de ferramentas com botões correspondentes a esses comandos.

Se você passar do último registro no conjunto de registros, a exibição de registro continuará a exibir o último registro. Se você passar para trás após o primeiro registro, o modo de exibição de registro continuará a exibir o primeiro registro.

Confira também

Gráfico da hierarquia