📄 medicalfrm.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "MedicalFrm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "BaseFrm"
#pragma resource "*.dfm"
TfrmMedical *frmMedical;
//---------------------------------------------------------------------------
__fastcall TfrmMedical::TfrmMedical(TComponent* Owner)
: TfrmBase(Owner)
{}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::btnDrugAddClick(TObject *Sender)
{
TListItem * li;
if (m_liDrug == NULL)
{
li = lvDrug->Items->Add();
}
else
{
li = m_liDrug;
}
for (int i = li->SubItems->Count - 1; i >= 0; --i)
{
li->SubItems->Delete(i);
}
li->Caption = cboDrugMode->Text;
li->SubItems->Add(cboDrugName->Text);
li->SubItems->Add(edtDrugNum->Text);
li->SubItems->Add(cboDrugUnit->Text);
li->SubItems->Add(edtDrugPrice->Text);
AnsiString strNum = edtDrugNum->Text;
if (edtDrugNum->Text == "")
{
strNum = "0";
}
AnsiString strPrice = edtDrugPrice->Text;
if (strPrice == "")
{
strPrice = "0";
}
AnsiString strTotalPrice;
// StrToCurr(strPrice) * StrToCurr(strNum)
strTotalPrice.sprintf("%.2f", atof(strPrice.c_str()) * atof(strNum.c_str()));
li->SubItems->Add(strTotalPrice);
m_liDrug = NULL;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::btnInjectionAddClick(TObject *Sender)
{
TListItem * li;
if (m_liInjection == NULL)
{
li = lvInjection->Items->Add();
}
else
{
li = m_liInjection;
}
for (int i = li->SubItems->Count - 1; i >= 0; --i)
{
li->SubItems->Delete(i);
}
li->Caption = cboInjectionMode->Text;
li->SubItems->Add(cboInjectionDrug->Text);
li->SubItems->Add(edtInjectionDrugNum->Text);
li->SubItems->Add(cboInjectionDrugUnit->Text);
li->SubItems->Add(edtInjectionDrugPrice->Text);
AnsiString strTotalPrice;
AnsiString strNum = edtInjectionDrugNum->Text;
if (strNum == "")
{
strNum = "0";
}
AnsiString strPrice = edtInjectionDrugPrice->Text;
if (strPrice == "")
{
strPrice = "0";
}
strTotalPrice.sprintf("%.2f", atof(strPrice.c_str()) * atof(strNum.c_str()));
li->SubItems->Add(strTotalPrice);
m_liDrug = NULL;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::btnInjectionDeleClick(TObject *Sender)
{
//int nSel = lvInjection->Selected->Index;
//lvInjection->Items->Delete(nSel);
if (lvInjection->Selected != NULL)
lvInjection->Selected->Delete();
m_liInjection = NULL;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::btnDrugDeleClick(TObject *Sender)
{
if (lvDrug->Selected != NULL)
lvDrug->Selected->Delete();
m_liDrug = NULL;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::FormShow(TObject *Sender)
{
m_liDrug = NULL;
m_liInjection = NULL;
dtpMedicalDate->Date =Now();
dtpOxygenStartDate->Date = Now();
dtpOxygenStartTime->Time = Now();
dtpOxygenEndDate->Date = Now() + 1;
dtpOxygenEndTime->Time = Now();
tsDrug->TabVisible = chkDrug->Checked;
tsInjection->TabVisible = chkInjection->Checked;
tsOxygen->TabVisible = chkOxygen->Checked;
tsVaccination->TabVisible = chkVaccination->Checked;
tsSickLeave->TabVisible = chkSickLeave->Checked;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::lvDrugDblClick(TObject *Sender)
{
m_liDrug = lvDrug->Selected;
if (m_liDrug == NULL)
{
return;
}
cboDrugMode->Text = m_liDrug->Caption;
cboDrugName->Text = m_liDrug->SubItems->Strings[0];
edtDrugNum->Text = m_liDrug->SubItems->Strings[1];
cboDrugUnit->Text = m_liDrug->SubItems->Strings[2];
edtDrugPrice->Text = m_liDrug->SubItems->Strings[3];
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::lvInjectionDblClick(TObject *Sender)
{
m_liInjection = lvDrug->Selected;
if (m_liInjection == NULL)
{
return;
}
cboDrugMode->Text = m_liInjection->Caption;
cboDrugName->Text = m_liInjection->SubItems->Strings[0];
edtDrugNum->Text = m_liInjection->SubItems->Strings[1];
cboDrugUnit->Text = m_liInjection->SubItems->Strings[2];
edtDrugPrice->Text = m_liInjection->SubItems->Strings[3];
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::btnTotalClick(TObject *Sender)
{
AnsiString strNum = edtVaccinationNum->Text;
if (strNum == "")
{
strNum = "0";
}
AnsiString strPrice = edtVaccinationPrice->Text;
if (strPrice == "")
{
strPrice = "0";
}
AnsiString str;
str.sprintf("小计: RMB %.2f", \
atof(strPrice.c_str()) * atof(strNum.c_str()));
//ShowMessage(str);
lblTotal->Caption = str;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::edtVaccinationNumChange(TObject *Sender)
{
btnTotalClick(btnTotal);
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::chkDrugClick(TObject *Sender)
{
tsDrug->TabVisible = chkDrug->Checked;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::chkInjectionClick(TObject *Sender)
{
tsInjection->TabVisible = chkInjection->Checked;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::chkOxygenClick(TObject *Sender)
{
tsOxygen->TabVisible = chkOxygen->Checked;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::chkVaccinationClick(TObject *Sender)
{
tsVaccination->TabVisible = chkVaccination->Checked;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMedical::chkSickLeaveClick(TObject *Sender)
{
tsSickLeave->TabVisible = chkSickLeave->Checked;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -