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

📄 proinffrm.cpp

📁 醫院管理 還不錯 醫院管理 還不錯 醫院管理 還不錯
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "ProInfFrm.h"
#include "MainDm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "BaseFrm"
#pragma resource "*.dfm"

TfrmProInf *frmProInf;
//---------------------------------------------------------------------------
__fastcall TfrmProInf::TfrmProInf(TComponent* Owner)
        : TfrmBase(Owner)
{}
//---------------------------------------------------------------------------
void __fastcall TfrmProInf::btnAddClick(TObject *Sender)
{
    //添加一个新的产品,置清信息框
    edtName->Clear();
    edtPrice->Text = "0.0";
    rtfRemark->Clear();

    m_bNewFlag = true;

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

void __fastcall TfrmProInf::btnSaveClick(TObject *Sender)
{
    qryProInf->Close();

    dmMain->qrySQLPlus->SQL->Clear();
    String strExec;
    if (m_bNewFlag)
    {
        strExec = "insert prdinf (name,price,remark,prdknd,prdshape) "
                  "values (:name,:price,:remark,:prdknd,:prdshape)";
    }
    else
    {
        String strCurId = Trim(qryProInf->Fields->Fields[0]->AsString);
        strExec = "update prdinf set name=:name,price=:price,remark=:remark,"
                  "prdknd=:prdknd,prdshape=:prdshape "
                  " where id=" + strCurId;
    }

    dmMain->qrySQLPlus->SQL->Add(strExec);
    dmMain->qrySQLPlus->Parameters->ParamByName("name")->Value
    = edtName->Text;
    dmMain->qrySQLPlus->Parameters->ParamByName("price")->Value
    = StrToCurr(edtPrice->Text);
    dmMain->qrySQLPlus->Parameters->ParamByName("remark")->Value
    = rtfRemark->Text;
    dmMain->qrySQLPlus->Parameters->ParamByName("prdknd")->Value
    = Trim(cboPrdKnd->Text);
    dmMain->qrySQLPlus->Parameters->ParamByName("prdshape")->Value
    = Trim(cboPrdShape->Text);

    dmMain->qrySQLPlus->ExecSQL();
    qryProInf->Open();

    btnSave->Enabled = true;
    grdProInf->SetFocus();

    GetPrdKnd();
    GetPrdShape();

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

void __fastcall TfrmProInf::btnDeleteClick(TObject *Sender)
{
    if (MessageBox(Handle, "是否确认删除数操作?", "询问",
                   MB_YESNO | MB_ICONQUESTION) == IDNO)
    {
        return;
    }

    String strCurId = qryProInf->Fields->Fields[0]->AsString;

    qryProInf->Close();


    dmMain->qrySQLPlus->SQL->Clear();
    dmMain->qrySQLPlus->SQL->Add("delete from prdinf "
                                 "where id=" + strCurId);
    dmMain->qrySQLPlus->ExecSQL();
    qryProInf->Open();
    btnDelete->Enabled = false;
    GetPrdKnd();
    GetPrdShape();


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

void __fastcall TfrmProInf::edtNameChange(TObject *Sender)
{
    btnSave->Enabled = true;

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


void __fastcall TfrmProInf::grdProInfDblClick(TObject *Sender)
{
    if (!qryProInf->Active || qryProInf->RecordCount < 1)
    {
        return;
    }

    edtName->Text = qryProInf->Fields->Fields[1]->AsString;
    edtPrice->Text = qryProInf->Fields->Fields[2]->AsString;
    rtfRemark->Text = qryProInf->Fields->Fields[3]->AsString;
    btnDelete->Enabled = true;
    btnSave->Enabled = false;
    btnAdd->Enabled = true;

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


void __fastcall TfrmProInf::FormShow(TObject *Sender)
{
    qryProInf->Close();
    qryProInf->SQL->Clear();
    qryProInf->SQL->Add("select id as 产品编号, name as 产品名称, "
                        "price as 产品价格,prdknd as 产品体系,prdshape as 产品外形, "
                        "remark as 备注信息 from prdinf");
    qryProInf->Open();

    btnAddClick(btnAdd);

    GetPrdKnd();
    GetPrdShape();

    //设置产品、形状索引

    grdProInf->Columns->Items[5]->Visible = false;

    cboPrdKnd->ItemIndex = 0;
    cboPrdShape->ItemIndex = 0;

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

void __fastcall TfrmProInf::edtPriceKeyPress(TObject *Sender, char &Key)
{
    if (!(VK_DELETE == Key || 8 == Key || (Key >= 48 && Key <= 57)))
    {
        Key = 0x00;
    }
}
//---------------------------------------------------------------------------


//取得产品种类

void TfrmProInf::GetPrdKnd()
{
    TStrings * stlAdd = cboPrdKnd->Items;
    stlAdd->Clear();

    TADOQuery * qryEx = dmMain->qrySQLPlus;

    qryEx->Close();
    qryEx->SQL->Clear();
    qryEx->SQL->Add("select prdknd from prdinf group by prdknd");
    qryEx->Open();

    while (!qryEx->Eof)
    {
        String strPrdName = Trim(qryEx->Fields->Fields[0]->AsString);
        stlAdd->Add(strPrdName);
        qryEx->Next();
    }
    qryEx->Close();

}

//取得产品形状
void TfrmProInf::GetPrdShape()
{
    TStrings * stlAdd = cboPrdShape->Items;
    stlAdd->Clear();

    TADOQuery * qryEx = dmMain->qrySQLPlus;

    qryEx->Close();
    qryEx->SQL->Clear();
    qryEx->SQL->Add("select prdshape from prdinf group by prdshape");
    qryEx->Open();

    while (!qryEx->Eof)
    {
        String strPrdName = Trim(qryEx->Fields->Fields[0]->AsString);
        stlAdd->Add(strPrdName);
        qryEx->Next();
    }
    qryEx->Close();


}

⌨️ 快捷键说明

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