Posted by: okipuki on: Temmuz 19, 2008
Adres defteri projesi için MFC AppWizard ile bir veri tabanlı bir proje oluşturun. Projede bulunan sınıfların kodları aşağıda bulunmaktadır.
Bağlantının sağlandığı fonksiyon.
CString CAdresDefteriSet::GetDefaultConnect()
{
return _T(“ODBC;DSN=AdresDefteri”);
}
Veri tabanından çekilecek olan veri için SQL deyiminin girildiği fonksiyon.
CString CAdresDefteriSet::GetDefaultSQL()
{
return _T(“[Adres]“);
}
Kayıtları açabilmek için yaratılmış olan CRecordSet sınıfı:
class CAdresDefteriSet : public CRecordset
{
public:
CAdresDefteriSet(CDatabase* pDatabase = NULL);
DECLARE_DYNAMIC(CAdresDefteriSet)
// Field/Param Data
//{{AFX_FIELD(CAdresDefteriSet, CRecordset)
long m_ID;
CString m_isim;
CString m_Soyad;
CString m_Adres;
CString m_il;
CString m_Mail;
CString m_Tel;
//}}AFX_FIELD
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAdresDefteriSet)
public:
virtual CString GetDefaultConnect(); // Default connection string
virtual CString GetDefaultSQL(); // default SQL for Recordset
virtual void DoFieldExchange(CFieldExchange* pFX); // RFX support
//}}AFX_VIRTUAL
// Implementation
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
};
Kayıt ekleme butonu için fonksiyon.
void CAdresDefteriView::OnBtnAdd()
{
// TODO: Add your control notification handler code here
m_pSet->AddNew();
CEdit* pCtrl = (CEdit*)GetDlgItem(IDC_ADRES_ID);
int result = pCtrl->SetReadOnly(FALSE);
UpdateData(FALSE);}
Arama butonu için fonksiyon.
void CAdresDefteriView::OnBtnAra() {
// TODO: Add your control notification handler code here
CString Deger, str ;
m_ara.GetWindowText(Deger);
if (m_radioAdres.GetCheck())
str = “Adres = ‘” + Deger + “‘”;
if (m_radioisim.GetCheck())
str = “isim = ‘” + Deger + “‘”;
if (m_radioil.GetCheck())
str = “il = ‘” + Deger + “‘”;
if (m_radioMail.GetCheck())
str = “Mail = ‘” + Deger + “‘”;
if (m_radioSoyad.GetCheck())
str = “Soyad = ‘” + Deger + “‘”;
m_pSet->Close();
m_pSet->m_strFilter = str;
m_pSet->Open();
if (m_pSet->GetRecordCount()>0)
m_pSet->MoveFirst();
UpdateData(FALSE);}
Kayıt silme butonu için fonksiyon.
void CAdresDefteriView::OnBtnDelete()
{
// TODO: Add your control notification handler code here
m_pSet->Delete();
m_pSet->MoveNext();
if (m_pSet->IsEOF())
m_pSet->MoveLast();
if (m_pSet->IsBOF())
m_pSet->SetFieldNull(NULL);
UpdateData(FALSE);}
Birinci kayıta götüren fonksiyon.
void CAdresDefteriView::OnBtnFirst()
{
// TODO: Add your control notification handler code here
m_pSet->MoveFirst();
UpdateData(FALSE);
}
Kayıt ekleyen fonksiyon.
void CAdresDefteriView::OnBtnKaydet()
{
// TODO: Add your control notification handler code here
UpdateData(FALSE);
}
Son kayıta götüren fonksiyon.
void CAdresDefteriView::OnBtnLast()
{
// TODO: Add your control notification handler code here
m_pSet->MoveLast();
UpdateData(FALSE);
}
Bir sonraki kayıta götüren fonksiyon.
void CAdresDefteriView::OnBtnNext()
{
// TODO: Add your control notification handler code here
if (m_pSet->IsBOF()==TRUE){
m_pSet->MoveNext();
}
if (m_pSet->IsEOF()==FALSE){
m_pSet->MoveNext();
}
UpdateData(FALSE);
}
Bir önceki kayıta götüren fonksiyon.
void CAdresDefteriView::OnBtnPrevious()
{
// TODO: Add your control notification handler code here
if (m_pSet->IsEOF()==TRUE){
m_pSet->MovePrev();
}
if (m_pSet->IsBOF()==FALSE){
m_pSet->MovePrev();
}
UpdateData(FALSE);
}
Kayıtı güncelleme fonksiyonu.
void CAdresDefteriView::OnBtnUpdate()
{
// TODO: Add your control notification handler code here
m_pSet->Update();
UpdateData(FALSE);
}
Kayıtları adrese göre sıralamak için seçim yaptıran ve işleten fonksiyon.
void CAdresDefteriView::OnRadioAdres()
{
// TODO: Add your control notification handler code here
m_pSet->Close();
m_pSet->m_strSort = “Adres”;
m_pSet->Open();
UpdateData(FALSE);
}
Kayıtları ile göre sıralamak için seçim yaptıran ve işleten fonksiyon.
void CAdresDefteriView::OnRadioIl()
{
// TODO: Add your control notification handler code here
m_pSet->Close();
m_pSet->m_strSort = “il”;
m_pSet->Open();
UpdateData(FALSE);
}
Kayıtları maile göre sıralamak için seçim yaptıran ve işleten fonksiyon.
void CAdresDefteriView::OnRadioMail()
{
// TODO: Add your control notification handler code here
m_pSet->Close();
m_pSet->m_strSort = “Mail”;
m_pSet->Open();
UpdateData(FALSE);
}
Kayıtları isime göre sıralamak için seçim yaptıran ve işleten fonksiyon.
void CAdresDefteriView::OnRadioIsim()
{
// TODO: Add your control notification handler code here
m_pSet->Close();
m_pSet->m_strSort = “isim”;
m_pSet->Open();
UpdateData(FALSE);
}
Kayıtları soyada göre sıralamak için seçim yaptıran ve işleten fonksiyon.
void CAdresDefteriView::OnRadioSoyad()
{
// TODO: Add your control notification handler code here
m_pSet->Close();
m_pSet->m_strSort = “Soyad”;
m_pSet->Open();
UpdateData(FALSE);}
Son Yorumlar