⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.cpp

📁 记录程序记录的程序源码
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Trayicon"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
Splitter1->Parent=Form1;
}
//---------------------------------------------------------------------------


void __fastcall TForm1::FormResize(TObject *Sender)
{
if(DBGrid1->Width>340)
DBGrid1->Width=340;
//if(DBGrid1->Width>209)
//Form1->Width=380+DBGrid1->Width;
if(Form1->Width<589)
Form1->Width=589 ;
if(Form1->Height<116)
Form1->Height=116;
DBGrid1->Height=Form1->Height-114;
DBMemo1->Width=Panel1->Width-7;
DBMemo1->Height=Panel1->Height-34;


}
//---------------------------------------------------------------------------



void __fastcall TForm1::dealdata()
{
if(DBEdit1->Text==""||DBMemo1->Text=="")
MessageBox(TForm1::Handle,"你的记录没有填完全","你的记录没有填完全",MB_OK);
else
  {

               if(DataSource1->DataSet==ADOTable1)
               {
                  //if(checkexist(ADOTable1->FieldByName("Name")->AsString))
                  //{
                  ADOTable1->Edit();
                  ADOTable1->FieldByName("Name")->AsString=DBEdit1->Text;
                  ADOTable1->FieldByName("Text")->AsString=DBMemo1->Text;
                  ADOTable1->FieldByName("Date")->AsDateTime=Now();
                  ADOTable1->FieldByName("Check")->AsBoolean=false;
                  ADOTable1->Post();
                  //}
                  //else
                  //{
                 // MessageBox(TForm1::Handle,"已经存在相同标题的记录","已经存在相同标题的记录",MB_OK);
                 // return;
                 // }

                }
                else
                {
               //  if(checkexist(ADOQuery1->FieldByName("Name")->AsString))
                //  {
                ADOQuery1->Edit();
                ADOQuery1->FieldByName("Name")->AsString=DBEdit1->Text;
                ADOQuery1->FieldByName("Text")->AsString=DBMemo1->Text;
                ADOQuery1->FieldByName("Date")->AsDateTime=Now();
                ADOQuery1->FieldByName("Check")->AsBoolean=false;
                ADOQuery1->Post();
                // }
               //  else
               //  {
               //  MessageBox(TForm1::Handle,"已经存在相同标题的记录","已经存在相同标题的记录",MB_OK);
               //   return;
               //  }
                }

        DBEdit1->ReadOnly=true;
        DBMemo1->ReadOnly=true;
  }
StatusBar1->Panels->Items[1]->Text="操作完成";  
}


void __fastcall TForm1::ToolButton5Click(TObject *Sender)
{
dealdata();
StatusBar1->Panels->Items[1]->Text="添加记录";
DBEdit1->ReadOnly=false;
DBMemo1->ReadOnly=false;
DBEdit1->Clear();
DBMemo1->Clear();
DBEdit1->Refresh();
DBMemo1->Refresh();
if(DataSource1->DataSet==ADOTable1)
 {


 ADOTable1->Append();
 }
else
 {


 ADOQuery1->Append();
 }

}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton6Click(TObject *Sender)
{
dealdata();
StatusBar1->Panels->Items[1]->Text="修改记录";
if(DataSource1->DataSet==ADOTable1)
 ADOTable1->Edit();
else
 ADOQuery1->Edit();
DBEdit1->ReadOnly=false;
DBMemo1->ReadOnly=false;        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton7Click(TObject *Sender)
{
//dealdata();
StatusBar1->Panels->Items[1]->Text="删除记录";
if(MessageBox(TForm1::Handle,"你确定要删除记录吗?","你确定要删除记录吗?",MB_YESNO)==IDYES)
  {
  if(DataSource1->DataSet==ADOTable1)
   {
   ADOTable1->Refresh();
   ADOTable1->Edit();
   ADOTable1->Delete();
   
   }
  else
     {
    ADOQuery1->Edit();
    ADOQuery1->Delete();
    }

  }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N17Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Text="select * from Title  order by Name";
ADOQuery1->Prepared=true;
ADOQuery1->Open();
if(DataSource1->DataSet!=ADOQuery1)
DataSource1->DataSet=ADOQuery1;
 StatusBar1->Panels->Items[5]->Text=AnsiString(ADOQuery1->RecordCount);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N18Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Text="select * from Title  order by Name desc";
ADOQuery1->Prepared=true;
ADOQuery1->Open();
if(DataSource1->DataSet!=ADOQuery1)
DataSource1->DataSet=ADOQuery1;
 StatusBar1->Panels->Items[5]->Text=AnsiString(ADOQuery1->RecordCount);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N19Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Text="select * from Title  order by Date";
ADOQuery1->Prepared=true;
ADOQuery1->Open();
if(DataSource1->DataSet!=ADOQuery1)
DataSource1->DataSet=ADOQuery1;
 StatusBar1->Panels->Items[5]->Text=AnsiString(ADOQuery1->RecordCount);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N20Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Text="select * from Title  order by Date desc";
ADOQuery1->Prepared=true;
ADOQuery1->Open();
if(DataSource1->DataSet!=ADOQuery1)
DataSource1->DataSet=ADOQuery1;
StatusBar1->Panels->Items[5]->Text=AnsiString(ADOQuery1->RecordCount);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton9Click(TObject *Sender)
{
dealdata();
StatusBar1->Panels->Items[1]->Text="查询记录";
ComboBox1->Items->Add(ComboBox1->Text);
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
if(ComboBox2->ItemIndex<1)
ADOQuery1->SQL->Text="select * from Title where Name like \"%"+ComboBox1->Text+"%\"  order by Name";
else
ADOQuery1->SQL->Text="select * from Title where Name like \"%"+ComboBox1->Text+"%\""+" or Text like \"%"+ComboBox1->Text+"%\" order by Name";
ADOQuery1->Prepared=true;
ADOQuery1->Open();
if(ADOQuery1->Eof==true)
 {
 DataSource1->DataSet=ADOQuery1;
 }
 else
 {

 if(DataSource1->DataSet!=ADOQuery1)
 DataSource1->DataSet=ADOQuery1;
 StatusBar1->Panels->Items[5]->Text=AnsiString(ADOQuery1->RecordCount);
 }


}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton1Click(TObject *Sender)
{
AnsiString conpath;

dealdata();
StatusBar1->Panels->Items[1]->Text="导入数据";
if(OpenDialog1->Execute())
 {

  conpath="Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data Source=";
  conpath=conpath+OpenDialog1->FileName;
  conpath=conpath+";Mode=ReadWrite;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False";
  ADOConnection2->ConnectionString=conpath;
  ADOConnection2->Connected=true;
  ADOTable2->Connection=ADOConnection2;
  ADOTable2->TableName="Title";
  ADOTable2->Active=true;
    StatusBar1->Panels->Items[3]->Text="正在导入数据";
     if(ADOTable2->IsEmpty()!=true)
        {
          for(;ADOTable2->Eof!=true;)
                {
                    if(checkexist(ADOTable2->FieldByName("Name")->AsString))
                     {

                     ADOTable1->Append();
                     ADOTable1->FieldByName("Name")->AsString=ADOTable2->FieldByName("Name")->AsString;
                     ADOTable1->FieldByName("Text")->AsString=ADOTable2->FieldByName("Text")->AsString;
                     ADOTable1->FieldByName("Date")->AsDateTime=ADOTable2->FieldByName("Date")->AsDateTime;
                     ADOTable1->FieldByName("Check")->AsBoolean=true;
                     ADOTable1->Post();

                     }
                   ADOTable2->Next();
                  }
                 ADOTable2->Close();
                 ADOConnection2->Close();
                 DataSource1->DataSet=ADOTable1;
        }
        ADOTable2->Close();
        ADOConnection2->Close();
        DataSource1->DataSet=ADOTable1;
 }
StatusBar1->Panels->Items[1]->Text="操作完成";
StatusBar1->Panels->Items[3]->Text="";
 StatusBar1->Panels->Items[5]->Text=AnsiString(ADOTable1->RecordCount);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton2Click(TObject *Sender)
{
//dealdata();
StatusBar1->Panels->Items[1]->Text="导出数据";
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton11Click(TObject *Sender)
{

dealdata();
StatusBar1->Panels->Items[1]->Text="操作完成";
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ToolButton12Click(TObject *Sender)
{
dealdata();
StatusBar1->Panels->Items[1]->Text="帮助";
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N22Click(TObject *Sender)
{
if(N22->Checked==true)
 {
 N22->Checked=false;
 DBMemo1->ScrollBars=ssBoth;
 }
else
 {
 N22->Checked=true;
 DBMemo1->ScrollBars=ssVertical;

 }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N15Click(TObject *Sender)
{
MessageBox(TForm1::Handle,"当前版本:v0.92","版本信息",MB_OK)  ;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N16Click(TObject *Sender)
{
MessageBox(TForm1::Handle,"夭夭\nE-mail:czylj@netease.com","作者信息",MB_OK) ;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ComboBox1KeyUp(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
if(Key==13)
ToolButton9Click(Sender);
}
//---------------------------------------------------------------------------



void __fastcall TForm1::FormCreate(TObject *Sender)
{
StatusBar1->Panels->Items[1]->Text="就绪";
 StatusBar1->Panels->Items[5]->Text=AnsiString(ADOTable1->RecordCount);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::TrayIcon1Restore(TObject *Sender)
{
if(Form1->Visible==false)
SetWindowPos(Form1->Handle,HWND_TOP,NULL,NULL,NULL,NULL,SWP_NOSIZE);        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N7Click(TObject *Sender)
{
dealdata();
Form1->Close();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N9Click(TObject *Sender)
{
ToolButton5Click(Sender);        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N10Click(TObject *Sender)
{
ToolButton6Click(Sender);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N11Click(TObject *Sender)
{
ToolButton7Click(Sender);        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N2Click(TObject *Sender)
{
ToolButton1Click(Sender);
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N3Click(TObject *Sender)
{
ToolButton2Click(Sender);        
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N26Click(TObject *Sender)
{
ToolButton5Click(Sender);          
}
//---------------------------------------------------------------------------

void __fastcall TForm1::N24Click(TObject *Sender)
{
ToolButton6Click(Sender);        
}
//---------------------------------------------------------------------------


bool __fastcall TForm1::checkexist(AnsiString c)
{
for(int i=1;i<=c.Length();i++)
{
if(c[i]=='"')
   {
   for(int j=i;j<c.Length();j++)
     {
     c[j]=c[j+1];
    }
    c.SetLength(c.Length()-1);
   }
}
ADOQuery2->Close();
ADOQuery2->SQL->Clear();
ADOQuery2->SQL->Text="select * from Title where Name =\""+c+"\"  order by Name";
ADOQuery2->Prepared=true;
ADOQuery2->Open();
if(ADOQuery2->Eof==true)
 {

   return true;
 }
else
return false;


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -