?? unitmain.~cpp
字號:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "UnitMain.h"
#include "registry.hpp"
#include "UnitRest.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//名稱:Fresh()
//功能:根據提供的參數(日期)查詢數據并且返回顯示
//參數:AnsiString date 日期
//返回值:無
void Fresh(AnsiString date)
{
MainForm->DateText->Caption = date ;
MainForm->MemoText->Clear();
AnsiString DataBase = ExtractFilePath(Application->ExeName) + "data\\MemorandumBook.mdb" ;
if ( FileExists(DataBase) )
{
//ADO連接數據庫
MainForm->ADO->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataBase ;
MainForm->ADOConnection->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataBase ;
//SQL查詢語句
AnsiString sql = "select * from MemorandumBook where MyDate = '"+date+"' " ;
MainForm->ADO->Close();
MainForm->ADO->SQL->Clear();
MainForm->ADO->SQL->Add(sql);
MainForm->ADO->Open();
//查詢的結果存在ADO中
for ( int i=0 ; i<MainForm->ADO->RecordCount ; i++ )
{
MainForm->MemoText->Lines->Add(MainForm->ADO->FieldByName("Hint")->AsString) ;
MainForm->ADO->Next();
}
MainForm->ADO->Close();
}
MainForm->FromTodayLabel->Caption = "距今" + IntToStr(int(TDate(date) - Now().CurrentDate())) + "天 " ;
switch(TDate(date).DayOfWeek())
{
case 1:
MainForm->WeekLabel->Caption = "星期天 ";
break;
case 2:
MainForm->WeekLabel->Caption = "星期一 ";
break;
case 3:
MainForm->WeekLabel->Caption = "星期二 ";
break;
case 4:
MainForm->WeekLabel->Caption = "星期三 ";
break;
case 5:
MainForm->WeekLabel->Caption = "星期四 ";
break;
case 6:
MainForm->WeekLabel->Caption = "星期五 ";
break;
case 7:
MainForm->WeekLabel->Caption = "星期六 ";
break;
}
}
//----------------------------------------------------------------------
//名稱:Save()
//功能:保存修改的事件
//參數:無
//返回值:無
void Save()
{
AnsiString DataBase = ExtractFilePath(Application->ExeName) + "data\\MemorandumBook.mdb" ;
if ( FileExists(DataBase) )
{
//鏈接數據庫
MainForm->ADO->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataBase ;
MainForm->ADOConnection->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + DataBase ;
//查詢語句 判斷是否已經存在該天的記錄
AnsiString sql = "select * from MemorandumBook where MyDate='" + MainForm->DateText->Caption + "'" ;
MainForm->ADO->Close();
MainForm->ADO->SQL->Clear();
MainForm->ADO->SQL->Add(sql);
MainForm->ADO->Open();
if ( MainForm->ADO->IsEmpty() ) //如果不存在就插入
{
AnsiString sql = "INSERT INTO REC (MyDate,Hint) VALUES ('"+MainForm->DateText->Caption+"','"+MainForm->MemoText->Text+"')";
//AnsiString sql= "INSERT INTO REC (MyDate,Hint) VALUES('2009-4-16','hahahah')";
MainForm->ADO->Close();
MainForm->ADO->SQL->Clear();
MainForm->ADO->SQL->Add(sql);
MainForm->ADO->ExecSQL();
MainForm->ADO->Close();
}
else //如果存在就更新
{
AnsiString sql = "UPDATE REC SET Hint ='"+MainForm->MemoText->Text+"' WHERE MyDate = '"+MainForm->DateText->Caption+"'";
MainForm->ADO->Close();
MainForm->ADO->SQL->Clear();
MainForm->ADO->SQL->Add(sql);
MainForm->ADO->ExecSQL();
MainForm->ADO->Close();
}
}
}
//-------------------------------------------------------------------------
void __fastcall TMainForm::button_TodayClick(TObject *Sender)
{
//ShowMessage(DateToStr(Now().CurrentDate()));
Fresh(DateToStr( Now().CurrentDate()) ) ;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormCreate(TObject *Sender)
{
//設置窗體顯示位置
SetWindowLong(Application->Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
Fresh( DateToStr(Now().CurrentDate()) );
MainForm->Top = 0 ;
MainForm->Left = Screen->Width-MainForm->Width ;
DateText->Caption = Now().DateString() ;
TRegistry *Reg = new TRegistry;
Reg->RootKey = HKEY_LOCAL_MACHINE;
Reg->OpenKey("\\Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
Reg->WriteString("Hint",Application->ExeName);
Reg->CloseKey();
delete Reg;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::N10s1Click(TObject *Sender)
{
MainForm->Hide();
Timer1->Interval = 10000 ;
Timer1->Enabled = true ;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::N20s1Click(TObject *Sender)
{
MainForm->Hide();
Timer1->Interval = 200000 ;
Timer1->Enabled = true ;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::N30m1Click(TObject *Sender)
{
MainForm->Hide();
Timer1->Interval = 3000000 ;
Timer1->Enabled = true ;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::Exit1Click(TObject *Sender)
{
exit(0);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::button_NextClick(TObject *Sender)
{
if ( DateText->Caption != "Date" )
DateText->Caption = TDateTime(DateText->Caption) + 1 ;
else
DateText->Caption = Now().DateString() ;
Fresh(DateText->Caption);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::button_BackClick(TObject *Sender)
{
if ( DateText->Caption!="Date" )
{
DateText->Caption = TDateTime(DateText->Caption) - 1 ;
}
else
DateText->Caption = Now().DateString() ;
Fresh(DateText->Caption);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::AutoStart1Click(TObject *Sender)
{
//設置開機啟動
TRegistry *Reg = new TRegistry;
Reg->RootKey=HKEY_LOCAL_MACHINE;
Reg->OpenKey("\\Software\\Microsoft\\Windows\\CurrentVersion\\Run",true);
Reg->WriteString("Hint",Application->ExeName);
Reg->CloseKey();
delete Reg;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::button_SaveClick(TObject *Sender)
{
if ( MemoText->Text == "" )
ShowMessage(" It is Null ");
else
{
Save();
button_Save->Caption = "Save" ;
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::MemoTextKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
{
if ( Shift.Contains(ssCtrl)&&Key == 'S' )
button_SaveClick(button_Save); //重用保存事件
else
button_Save->Caption="Save*";
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::Timer2Timer(TObject *Sender)
{
RestForm->Show();
//3600000
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::Timer1Timer(TObject *Sender)
{
MainForm->Show();
Timer1->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::button_ExitClick(TObject *Sender)
{
exit(0);
}
//---------------------------------------------------------------------------
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -