Aracılığıyla paylaş


CRecordView Sınıfı

Denetimlerde veritabanı kayıtlarını görüntüleyen bir görünüm.

Sözdizimi

class AFX_NOVTABLE CRecordView : public CFormView

Üyeler

Korumalı Oluşturucular

Ad Tanım
CRecordView::CRecordView Bir CRecordView nesne oluşturur.

Genel Yöntemler

Ad Tanım
CRecordView::IsOnFirstRecord Geçerli kayıt ilişkili kayıt kümesindeki ilk kayıtsa sıfır dışı döndürür.
CRecordView::IsOnLastRecord Geçerli kayıt ilişkili kayıt kümesindeki son kayıtsa sıfır dışı döndürür.
CRecordView::OnGetRecordset öğesinden CRecordsettüretilmiş bir sınıfın nesnesine yönelik bir işaretçi döndürür. ClassWizard bu işlevi sizin için geçersiz kılar ve gerekirse kayıt kümesini oluşturur.
CRecordView::OnMove

Korumalı Yöntemler

Ad Tanım
CRecordView::OnMove Geçerli kayıt değiştiyse, veri kaynağında güncelleştirir, ardından belirtilen kayda geçer (sonraki, önceki, ilk veya son).

Açıklamalar

Görünüm, bir nesneye doğrudan bağlı bir CRecordset form görünümüdür. Görünüm bir iletişim kutusu şablonu kaynağından oluşturulur ve iletişim kutusu şablonunun denetimlerinde nesnenin alanlarını CRecordset görüntüler. nesnesi, CRecordView formdaki denetimler ve kayıt kümesinin alanları arasında veri hareketini otomatikleştirmek için iletişim kutusu veri değişimi (DDX) ve kayıt alanı değişimini (RFX) kullanır. CRecordView ayrıca ilk, sonraki, önceki veya son kayda geçmek için varsayılan bir uygulama ve şu anda görünümde olan kaydı güncelleştirmek için bir arabirim sağlar.

Dekont

Açık Veritabanı Bağlan ivity (ODBC) sınıfları yerine Veri Erişim Nesneleri (DAO) sınıfları ile çalışıyorsanız, bunun yerine CDaoRecordView sınıfını kullanın. Daha fazla bilgi için Genel Bakış: Veritabanı Programlama makalesine bakın.

Kayıt görünümünüzü oluşturmanın en yaygın yolu Uygulama Sihirbazı'dır. Uygulama Sihirbazı, iskelet başlangıç uygulamanızın bir parçası olarak hem kayıt görünümü sınıfını hem de ilişkili kayıt kümesi sınıfını oluşturur. Kayıt görünümü sınıfını Uygulama Sihirbazı ile oluşturmazsanız, daha sonra ClassWizard ile oluşturabilirsiniz. Tek bir forma ihtiyacınız varsa, Uygulama Sihirbazı yaklaşımı daha kolaydır. ClassWizard, geliştirme sürecinin ilerleyen bölümlerinde bir kayıt görünümü kullanmaya karar vermenizi sağlar. Bir kayıt görünümünü ve kayıt kümesini ayrı ayrı oluşturmak ve sonra bunları bağlamak için ClassWizard kullanmak, kayıt kümesi sınıfını ve öğesini adlandırmada daha fazla denetim sağladığından en esnek yaklaşımdır. H/. CPP dosyaları. Bu yaklaşım aynı kayıt kümesi sınıfında birden çok kayıt görünümüne sahip olmanıza da olanak tanır.

Uygulama Sihirbazı, son kullanıcıların kayıt görünümünde kayıttan kayda geçmelerini kolaylaştırmak için ilk, sonraki, önceki veya son kayda geçmek için menü (ve isteğe bağlı olarak araç çubuğu) kaynakları oluşturur. ClassWizard ile bir kayıt görünümü sınıfı oluşturursanız, menü ve bit eşlem düzenleyicileri ile bu kaynakları kendiniz oluşturmanız gerekir.

Kayıttan kayda geçiş için varsayılan uygulama hakkında bilgi için ve Kayıt Görünümü Kullanma makalesine bakın IsOnFirstRecordIsOnLastRecord.

CRecordView kayıt görünümünün kullanıcı arabirimini güncelleştirebilmesi için kullanıcının kayıt kümesindeki konumunu izler. Kullanıcı kayıt kümesinin herhangi bir sonuna geçtiğinde, kayıt görünümü kullanıcı arabirimi nesnelerini (menü öğeleri veya araç çubuğu düğmeleri gibi) aynı yönde daha fazla ilerlemek için devre dışı bırakır.

Kayıt görünümü ve kayıt kümesi sınıflarınızı bildirme ve kullanma hakkında daha fazla bilgi için, Kayıt Görünümleri makalesindeki "Kayıt Görünümü Tasarlama ve Oluşturma" makalesine bakın. Kayıt görünümlerinin nasıl çalıştığı ve nasıl kullanılacağı hakkında daha fazla bilgi için Kayıt Görünümü Kullanma makalesine bakın.

Devralma Hiyerarşisi

Cobject

Ccmdtarget

Cwnd

Cview

Cscrollview

Cformview

CRecordView

Gereksinimler

Üst bilgi: afxdb.h

CRecordView::CRecordView

türünden CRecordViewtüretilmiş bir nesne oluşturduğunuzda, görünüm nesnesini başlatmak ve görünümün temel aldığı iletişim kutusu kaynağını tanımlamak için oluşturucunun herhangi bir biçimini çağırın.

explicit CRecordView(LPCTSTR lpszTemplateName);
explicit CRecordView(UINT nIDTemplate);

Parametreler

lpszTemplateName
bir iletişim kutusu şablonu kaynağının adı olan null olarak sonlandırılan bir dize içerir.

nIDTemplate
İletişim kutusu şablonu kaynağının kimlik numarasını içerir.

Açıklamalar

Kaynağı ada göre (bir dizeyi oluşturucuya bağımsız değişken olarak geçir) veya kimliğine göre tanımlayabilirsiniz (bağımsız değişken olarak işaretsiz bir tamsayı geçirebilirsiniz). Kaynak kimliği kullanılması önerilir.

Dekont

Türetilmiş sınıfınız kendi oluşturucusunu sağlamalıdır . Türetilmiş sınıfınızın oluşturucusunda, aşağıdaki örnekte gösterildiği gibi kaynak adı veya kimliğiyle oluşturucuyu CRecordView::CRecordView bağımsız değişken olarak çağırın.

CRecordView::OnInitialUpdate çağrısında UpdateDatabulunur ve bu da öğesini çağırır DoDataExchange. Bu ilk çağrıDoDataExchange, denetimleri (dolaylı olarak) ClassWizard tarafından oluşturulan alan veri üyelerine CRecordset bağlarCRecordView. Temel sınıf CFormView::OnInitialUpdate üye işlevi çağrılana kadar bu veri üyeleri kullanılamaz.

Dekont

ClassWizard kullanıyorsanız, sihirbaz bir enum değer CRecordView::IDDtanımlar, bunu sınıf bildiriminde belirtir ve oluşturucunun üye başlatma listesinde kullanır.

Örnek

CMyRecordView::CMyRecordView()
   : CRecordView(CMyRecordView::IDD)
{
   m_pSet = NULL;
   // TODO: add construction code here

}

CRecordView::IsOnFirstRecord

Geçerli kaydın bu kayıt görünümüyle ilişkilendirilmiş kayıt kümesi nesnesindeki ilk kayıt olup olmadığını belirlemek için bu üye işlevini çağırın.

BOOL IsOnFirstRecord();

İade Değeri

Geçerli kayıt kayıt kümesindeki ilk kayıtsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bu işlev, ClassWizard tarafından yazılan varsayılan komut güncelleştirme işleyicilerinin kendi uygulamalarını yazmak için kullanışlıdır.

Kullanıcı ilk kayda geçerse, çerçeve ilk veya önceki kayda taşımak için sahip olduğunuz tüm kullanıcı arabirimi nesnelerini devre dışı bırakır.

CRecordView::IsOnLastRecord

Geçerli kaydın bu kayıt görünümüyle ilişkilendirilmiş kayıt kümesi nesnesindeki son kayıt olup olmadığını belirlemek için bu üye işlevini çağırın.

BOOL IsOnLastRecord();

İade Değeri

Geçerli kayıt kayıt kümesindeki son kayıtsa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Bu işlev, ClassWizard'ın kayıttan kayda geçiş için bir kullanıcı arabirimini desteklemek üzere yazdığı varsayılan komut güncelleştirme işleyicilerinin kendi uygulamalarını yazmak için kullanışlıdır.

Dikkat

Bu işlevin sonucu güvenilirdir, ancak görünüm, kullanıcı bunu geçene kadar kayıt kümesinin sonunu algılayamaz. Kayıt görünümünün sonraki veya son kayda geçmek için tüm kullanıcı arabirimi nesnelerini devre dışı bırakması gerektiğini görebilmesi için kullanıcının son kaydın ötesine geçmesi gerekir. Kullanıcı son kaydı geçerse ve sonra son kayda (veya öncekine) geri taşınırsa, kayıt görünümü kullanıcının kayıt kümesindeki konumunu izleyebilir ve kullanıcı arabirimi nesnelerini doğru şekilde devre dışı bırakabilir. IsOnLastRecord, veya CRecordset::MoveLastID_RECORD_LAST komutunu işleyen uygulama işlevine OnRecordLastyapılan bir çağrıdan sonra da güvenilir değildir.

CRecordView::OnGetRecordset

Kayıt görünümüyle ilişkilendirilmiş türetilmiş nesneye bir işaretçi CRecordsetdöndürür.

virtual CRecordset* OnGetRecordset() = 0;

İade Değeri

Nesne başarıyla oluşturulduysa türetilmiş nesne CRecordsetişaretçisi; aksi takdirde NULL işaretçi.

Açıklamalar

Bir kayıt kümesi nesnesi oluşturmak veya almak ve buna bir işaretçi döndürmek için bu üye işlevini geçersiz kılmanız gerekir. ClassWizard ile kayıt görünümü sınıfınızı bildirirseniz sihirbaz sizin için varsayılan bir geçersiz kılma yazar. ClassWizard'ın varsayılan uygulaması, varsa kayıt görünümünde depolanan kayıt kümesi işaretçisini döndürür. Aksi takdirde ClassWizard ile belirttiğiniz türde bir kayıt kümesi nesnesi oluşturur ve üye işlevini çağırarak Open tabloyu açar veya sorguyu çalıştırır ve nesneye bir işaretçi döndürür.

Daha fazla bilgi ve örnek için Kayıt Görünümleri: Kayıt Görünümü Kullanma makalesine bakın.

CRecordView::OnMove

Kayıt kümesindeki farklı bir kayda gitmek ve kayıt görünümünün denetimlerinde alanlarını görüntülemek için bu üye işlevini çağırın.

virtual BOOL OnMove(UINT nIDMoveCommand);

Parametreler

nIDMoveCommand
Aşağıdaki standart komut kimliği değerlerinden biri:

  • ID_RECORD_FIRST Kayıt kümesindeki ilk kayda gitme.

  • ID_RECORD_LAST Kayıt kümesindeki son kayda gitme.

  • ID_RECORD_NEXT Kayıt kümesinde sonraki kayda gitme.

  • ID_RECORD_PREV Kayıt kümesindeki önceki kayda gitme.

İade Değeri

Taşıma başarılı olursa sıfır olmayan; aksi takdirde taşıma isteği reddedildiyse 0.

Açıklamalar

Varsayılan uygulama, kayıt görünümüyle ilişkili nesnenin CRecordset uygun Move üye işlevini çağırır.

Varsayılan olarak, OnMove kullanıcı kayıt görünümünde değiştirdiyse veri kaynağındaki geçerli kaydı güncelleştirir.

Uygulama Sihirbazı, İlk Kayıt, Son Kayıt, Sonraki Kayıt ve Önceki Kayıt menü öğeleriyle bir menü kaynağı oluşturur. Yerleştirilebilir Araç Çubuğu seçeneğini seçerseniz, Uygulama Sihirbazı bu komutlara karşılık gelen düğmeleri içeren bir araç çubuğu da oluşturur.

Kayıt kümesindeki son kaydı geçerseniz, kayıt görünümü son kaydı görüntülemeye devam eder. İlk kaydı geriye doğru taşırsanız, kayıt görünümü ilk kaydı görüntülemeye devam eder.

Dikkat

Kayıt kümesinde kayıt yoksa çağrısı OnMove özel durum oluşturur. Kayıt kümesinin herhangi bir kaydı olup olmadığını belirlemek için ilgili taşıma işleminden önce uygun kullanıcı arabirimi güncelleştirme işleyici işlevini çağırın( OnUpdateRecordFirst, OnUpdateRecordLast, OnUpdateRecordNextveya OnUpdateRecordPrev ).

Ayrıca bkz.

CFormView Sınıfı
Hiyerarşi Grafiği
CRecordset Sınıfı
CFormView Sınıfı