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
Veri Akışı Adı | Açıklama |
---|---|
CRecordView::CRecordView | Bir CRecordView nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
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 CRecordset tü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
Veri Akışı Adı | Açıklama |
---|---|
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.
Not
Açık Veritabanı Bağlantısı (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 IsOnFirstRecord
IsOnLastRecord
.
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
CRecordView
Gereksinimler
Üst bilgi: afxdb.h
CRecordView::CRecordView
türünden CRecordView
tü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.
Not
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 UpdateData
bulunur 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.
Not
ClassWizard kullanıyorsanız, sihirbaz bir enum
değer CRecordView::IDD
tanı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();
Dönüş 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();
Dönüş 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::MoveLast
ID_RECORD_LAST komutunu işleyen uygulama işlevine OnRecordLast
yapı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 CRecordset
döndürür.
virtual CRecordset* OnGetRecordset() = 0;
Dönüş Değeri
Nesne başarıyla oluşturulduysa türetilmiş nesne CRecordset
iş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.
Dönüş 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
, OnUpdateRecordNext
veya OnUpdateRecordPrev
).
Ayrıca bkz.
CFormView Sınıfı
Hiyerarşi Grafiği
CRecordset Sınıfı
CFormView Sınıfı