📄 setup.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Setup.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TSetupForm *SetupForm;
//---------------------------------------------------------------------------
__fastcall TSetupForm::TSetupForm(TMainData *pMainData,TDM *pDatabase,TComponent* Owner)
: TForm(Owner)
{
m_pMainData = pMainData;
m_pDatabase = pDatabase;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::Button1Click(TObject *Sender)
{
m_pMainData->m_pBackColor = PreviewPanel->Color;
m_pMainData->m_pFontColor = PreviewPanel->Font->Color;
m_pMainData->WriteConfigFile();
ModalResult = mrOk;
//Close();
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::Button2Click(TObject *Sender)
{
ModalResult = mrCancel;
//Close();
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::BackColorBoxChange(TObject *Sender)
{
PreviewPanel->Color = BackColorBox->Selected;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::FontColorBoxChange(TObject *Sender)
{
PreviewPanel->Font->Color = FontColorBox->Selected;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::UpdateButtonClick(TObject *Sender)
{
//
int iIndex;
try
{
iIndex = StrToInt(MsgGrid->Cells[0][m_iSelectRow]);
}
catch(...)
{
return;
}
int iFind;
LPNOTEINFO pNoteInfo = m_pMainData->GetNoteInfoByNo(iIndex,iFind);
if(pNoteInfo != NULL)
{
String szMsg = pNoteInfo->m_szNote;
if(iFind > 0)
{
if(InputQuery("修改一条消息","修改消息",szMsg))
{
if(m_pDatabase->UpdateMsg(szMsg,pNoteInfo))
{
//m_pMainData->UpdateNoteInfoByNo(iIndex,pNoteInfo);
}
}
InitMessageGrid();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::HideButtonClick(TObject *Sender)
{
//
int iIndex;
try
{
iIndex = StrToInt(MsgGrid->Cells[0][m_iSelectRow]);
}
catch(...)
{
return;
}
int iFind;
LPNOTEINFO pNoteInfo = m_pMainData->GetNoteInfoByNo(iIndex,iFind);
if((iFind > 0) && (pNoteInfo != NULL))
{
if(m_pDatabase->HideMsg(pNoteInfo,true) > 0)
{
m_pMainData->HideNoteInfoByNo(iIndex,true);
}
InitMessageGrid();
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::InsertButtonClick(TObject *Sender)
{
//
String szTmp;
NOTEINFO NoteInfo;
if(InputQuery("添加一条消息","添加消息",szTmp))
{
NoteInfo.m_szNote = szTmp;
if(m_pDatabase->InsertAMsg(&NoteInfo) > 0)
{
m_pMainData->AddNoteInfo(NoteInfo);
InitMessageGrid();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::InitMessageGrid(void)
{
//TODO: Add your source code here
vecNoteInfoIt vNoteInfoIt;
MsgGrid->ColCount = 2;
MsgGrid->Cells[1][0] = FormatDateTime("m'月'd'日'",m_pMainData->m_ConfigDay) + "消息列表";
MsgGrid->ColWidths[0] = 0;
MsgGrid->ColWidths[1] = MsgGrid->Width;
MsgGrid->RowCount = 1;
vNoteInfoIt = m_pMainData->m_vNoteInfo.begin();
for(;vNoteInfoIt != m_pMainData->m_vNoteInfo.end();vNoteInfoIt++)
{
String szTmp;
if((!m_pMainData->m_bShowHide) && (!(*vNoteInfoIt).m_bShow))
{
continue;
}
MsgGrid->RowCount = MsgGrid->RowCount + 1;
MsgGrid->Cells[0][MsgGrid->RowCount - 1] = IntToStr((*vNoteInfoIt).m_iNoteNo);
if((*vNoteInfoIt).m_bShow)
{
szTmp = "[显示] ";
}
else
{
szTmp = "[隐藏] ";
}
String szTmpMsg = (*vNoteInfoIt).m_szNote;
if((*vNoteInfoIt).m_szNote.Length() > 60)
{
szTmp += szTmpMsg.SubString(0,60);
szTmp += "...";
}
else
{
szTmp += szTmpMsg;
}
MsgGrid->Cells[1][MsgGrid->RowCount - 1] = szTmp;
}
m_iSelectRow = 1;
}
void __fastcall TSetupForm::MsgGridDrawCell(TObject *Sender, int ACol,
int ARow, TRect &Rect, TGridDrawState State)
{
//
if(ARow == 0)
{
MsgGrid->Canvas->Brush->Color=(TColor)0x6699FF;
MsgGrid->Canvas->FillRect(Rect);
DrawText(MsgGrid->Canvas->Handle,MsgGrid->Cells[ACol][ARow].c_str(),-1,(RECT*)&Rect,
DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
if(ARow>0)
{
if(ARow % 2 == 0)
{
//
MsgGrid->Canvas->Brush->Color=(TColor)RGB(169,176,79);
MsgGrid->Canvas->FillRect(Rect);
}
else
{
//
MsgGrid->Canvas->Brush->Color=(TColor)RGB(74,242,255);
MsgGrid->Canvas->FillRect(Rect);
}
DrawText(MsgGrid->Canvas->Handle,MsgGrid->Cells[ACol][ARow].c_str(),-1,(RECT*)&Rect,
DT_SINGLELINE|DT_VCENTER|DT_LEFT);
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::MsgGridSelectCell(TObject *Sender, int ACol,
int ARow, bool &CanSelect)
{
//
CanSelect = true;
m_iSelectRow = ARow;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::RadioButton1Click(TObject *Sender)
{
//
if(RadioButton1->Checked)
{
m_pMainData->m_bBigFont = false;
}
else
{
m_pMainData->m_bBigFont = true;
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::RadioButton2Click(TObject *Sender)
{
//
if(RadioButton2->Checked)
{
m_pMainData->m_bBigFont = true;
}
else
{
m_pMainData->m_bBigFont = false;
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::TrackBar1Change(TObject *Sender)
{
//
m_pMainData->m_iRate = TrackBar1->Position;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::HideCheckBoxClick(TObject *Sender)
{
//
m_pMainData->m_bShowHide = HideCheckBox->Checked;
InitMessageGrid();
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::ShowButtonClick(TObject *Sender)
{
//
int iIndex;
try
{
iIndex = StrToInt(MsgGrid->Cells[0][m_iSelectRow]);
}
catch(...)
{
return;
}
int iFind;
LPNOTEINFO pNoteInfo = m_pMainData->GetNoteInfoByNo(iIndex,iFind);
if((iFind > 0) && (pNoteInfo != NULL))
{
if(m_pDatabase->HideMsg(pNoteInfo,false) > 0)
{
m_pMainData->HideNoteInfoByNo(iIndex,false);
}
InitMessageGrid();
}
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::TabSheet1Show(TObject *Sender)
{
HideCheckBox->Visible = true;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::TabSheet1Hide(TObject *Sender)
{
HideCheckBox->Visible = false;
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::BmpListViewCustomDrawItem(
TCustomListView *Sender, TListItem *Item, TCustomDrawState State,
bool &DefaultDraw)
{
//
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::TabSheet3Hide(TObject *Sender)
{
//
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::TabSheet3Show(TObject *Sender)
{
//
}
//---------------------------------------------------------------------------
void __fastcall TSetupForm::FormCreate(TObject *Sender)
{
//
BackColorBox->Selected = m_pMainData->m_pBackColor;
FontColorBox->Selected = m_pMainData->m_pFontColor;
PreviewPanel->Color = BackColorBox->Selected;
PreviewPanel->Font->Color = FontColorBox->Selected;
this->PageControl1->ActivePage = this->TabSheet1;
InitMessageGrid();
TrackBar1->Position = m_pMainData->m_iRate;
if(m_pMainData->m_bBigFont)
{
RadioButton2->Checked = true;
}
else
{
RadioButton1->Checked = true;
}
HideCheckBox->Checked = m_pMainData->m_bShowHide;
this->TabSheet3->TabVisible = false;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -