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

📄 ydmain.~cpp

📁 营业用电管理系统(网络版)是本公司推出的新一代软件产品
💻 ~CPP
📖 第 1 页 / 共 2 页
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "YDmain.h"
#include "Ydlyb.h"

#include "YDxlcs.h"
#include "YDczygl.h"
#include "YDdatam.h"
#include "YHDL.h"
#include "YDxgmm.h"
#include "YDczrz.h"
#include "YDver.h"
#include "YDdmsz.h"
#include "YDbyqcs.h"
#include "YDhydm.h"
#include "YDjjxm.h"
#include "YDmldj.h"
#include "YDxtcs.h"
#include "YDhsdw.h"
#include "YDsjbf.h"
#include "YDgds.h"
#include "YDywsl.h"
#include "YDdydj.h"
#include "DFJS.h"
#include "YDsgcb.h"
#include "YDdftzd.h"
#include "YDfl.h"
#include "YDCBYSZ.h"
#include "YDdfjsqd.h"
#include "DFSF.h"
#include "YDhsrltj.h"
#include "YDyhhmc.h"
#include "YDymjz.h"
#include "YDSJQF.h"
#include "YDqfll.h"
#include "YDsfqktj.h"
#include "YDxstj.h"
#include "YDfltj.h"
#include "YDhyflbb.h"
#include "YDdldffx.h"
#include "YDcbjgl.h"
#include "YDdljs.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFmain *Fmain;
AnsiString bjbmp;
TQuery *Qsftj=new TQuery(Application);

//---------------------------------------------------------------------------
__fastcall TFmain::TFmain(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------



void __fastcall TFmain::S18Click(TObject *Sender)
{
 Close();
}
//---------------------------------------------------------------------------



void __fastcall TFmain::W14Click(TObject *Sender)
{
 if (!W14->Checked)
  {
   OpenDialog1->Title ="请选择背景音乐";
   OpenDialog1->InitialDir=ExtractFilePath(Application->ExeName);
  OpenDialog1->Filter = "Music files (*.wav)|*.wav|All files (*.*)|*.*";
//   OpenDialog1->DefaultExt="*.wav";
   if(OpenDialog1->Execute())
    {
      MediaPlayer1->FileName=OpenDialog1->FileName;
     try
      {
        MediaPlayer1->Open();
       MediaPlayer1->Play();
      }
      catch (...)
      {
       Application->MessageBox("Error opening file",mtWarning,MB_ICONWARNING|MB_OK);
      }
    }
    W14->Checked=true;
 /*

    MediaPlayer1->FileName="c:\\ydgl_c\\hh.wav";
    MediaPlayer1->Open();

   */
 }
  else
  {
   W14->Checked=false;
   MediaPlayer1->Close();
  }

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

void __fastcall TFmain::W16Click(TObject *Sender)
{
if (!W16->Checked)
 {
  W16->Checked=true;
  new TFlyb(Application);
 }
}
//---------------------------------------------------------------------------

void __fastcall TFmain::CreateWnd(void)
{
  // let the base class CreateWnd do what it needs to do to
  // create a main window for the program.
  TForm::CreateWnd();

  // subclass the MDI client window so we can replace its default
  // message handler with our own. MakeObjectInstance transposes
  // the ClientProc function into a form that the API likes.
  // SetWindowLong then subclass the MDI client (ClientHandle)
  // using the return value from MakeObjectInstance.
  ClientObjectInstance = MakeObjectInstance (ClientProc) ;
  OriginalClientProc = (Pointer) SetWindowLong (ClientHandle,
                                                GWL_WNDPROC,
                                                (long) ClientObjectInstance);
}

void __fastcall TFmain::ClientProc (TMessage &Msg)
{
  switch (Msg.Msg)
  {
    case WM_ERASEBKGND:
      // intercept the message for painting the background and
      // draw the background ourself
      DrawClientWindow ((HDC) Msg.WParam) ;
      Msg.Result = true;
      return;
    case WM_HSCROLL:
    case WM_VSCROLL:
       //scrolling the client area can goof up our drawing. if the user scrolls
       //the client area, pass the message on to the original procedure and
       //then request a complete repaint of the background.
      Msg.Result = CallWindowProc ((FARPROC)OriginalClientProc, ClientHandle,
                                    Msg.Msg, Msg.WParam, Msg.LParam);
      InvalidateRect (ClientHandle, 0, true) ;
      break ;
    default:
      // pass all other messages on to the original window procedure
      // stored in OriginalClientProc
      Msg.Result = CallWindowProc ((FARPROC)OriginalClientProc, ClientHandle,
                                    Msg.Msg, Msg.WParam, Msg.LParam);
  }
}

void __fastcall TFmain::DrawClientWindow (HDC &Hdc)
{

  TRect rect ;                      // calculate size of backgnd
  ::GetClientRect (ClientHandle, (RECT *) &rect) ;

  // painting a shaded gradient is slow, and can cause flickering
  // eliminate flicker by using memory bitmaps and BitBlit
  Graphics::TBitmap *MemBitmap = new Graphics::TBitmap;
//   AnsiString AppPath = ExtractFilePath(Application->ExeName);
//   MemBitmap->LoadFromFile(AppPath+"bmps\\ydgl.bmp");		// 动态装入位图文件
   MemBitmap->LoadFromFile(bjbmp);		// 动态装入位图文件
   Fmain->Canvas->StretchDraw(rect, MemBitmap);         // 显示位图图形

  // Use API BitBlt to copy pixels to the screen.
   if (MemBitmap->Width<Fmain->Width)MemBitmap->Width=Fmain->Width;
   if (MemBitmap->Height<Fmain->Height)MemBitmap->Height=Fmain->Height;
  ::BitBlt(Hdc,0,0,MemBitmap->Width, MemBitmap->Height,
           MemBitmap->Canvas->Handle,0,0,SRCCOPY);
  MemBitmap->FreeImage();
  delete MemBitmap; // delete the temporary bitmap.
}

void __fastcall TFmain::DestroyWnd ()
{
  SetWindowLong (ClientHandle, GWL_WNDPROC, (long) OriginalClientProc) ;
  FreeObjectInstance (ClientObjectInstance) ;
  TForm::DestroyWnd();
}

void __fastcall TFmain::WMEraseBkgnd(TWMEraseBkgnd &Msg)
{                     // tell Windows to forget about the
  Msg.Result = false; // background. MDI client will draw
}                     // it later

void __fastcall TFmain::FormCloseQuery(TObject *Sender, bool &CanClose)
{
  if ( Application->MessageBox("真的要退出系统吗?","提示", MB_YESNO|MB_ICONQUESTION)==IDYES)
    CanClose = true;
  else
    CanClose = false;

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





void __fastcall TFmain::FormClose(TObject *Sender, TCloseAction &Action)
{
  TQuery *Query1=new TQuery(this);
  Query1->DatabaseName="Yddb";
  Query1->SQL->Add("insert into yhrz values('"+CLogin->gzzname+"',null,'"+Now()+"','退出')");
  Query1->ExecSQL();
  delete Query1;
  Session->DeleteAlias("ydgl_c"); //删除BDE别名
  Session->SaveConfigFile();

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

void __fastcall TFmain::I14Click(TObject *Sender)
{
  Fxlcs=new TFxlcs(Application);
  Fxlcs->ShowModal();
  delete Fxlcs;
  tcjc=I14->Caption;
  gnks(I14->Caption);
}
//---------------------------------------------------------------------------

void __fastcall TFmain::S11Click(TObject *Sender)
{

  new TFczygl(Application);
  tcjc=S11->Caption;
  gnks(S11->Caption);
}
//---------------------------------------------------------------------------

void __fastcall TFmain::S17Click(TObject *Sender)
{
  Fsjbf=new TFsjbf(Application);
  Fsjbf->ShowModal();
  delete Fsjbf;
  tcjc=S17->Caption;
  gnks(S17->Caption);

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

void __fastcall TFmain::FormCreate(TObject *Sender)
{
 bjbmp=ExtractFilePath(Application->ExeName)+"BMPS\\YDGL.BMP";
 YDData->TBczrz->Open();
 Menuint();
 YDData->TBxtcs->Open();

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

void __fastcall TFmain::W12Click(TObject *Sender)
{
  Cascade();
}
//---------------------------------------------------------------------------

void __fastcall TFmain::W11Click(TObject *Sender)
{
  Tile();
}
//---------------------------------------------------------------------------
 void TFmain::Menuint()
 {
   YDData->TBczy->First();
  while (!YDData->TBczy->Eof)
  {
   if (YDData->TBczy->FieldByName("czymc")->AsString==CLogin->czyname)break;
   YDData->TBczy->Next();
  }
  AnsiString gnqx=YDData->TBczy->FieldByName("czqx1")->AsString;
  TMenuItem *pe;
  TMenuItem *pad;
  for (int p=0;p<=MainMenu1->Items->Count-1;p++)
    {
      pad=MainMenu1->Items->Items[p];
    for (int k=0;k<=pad->Count-1;k++)
    {
     pe=pad->Items[k];
     int i;
     bool zdl=false;
     for (i=0;i<gnqx.Length()/3;i++)
     {
       if (gnqx.SubString(i*3+1,3)==pe->Name)
        {
         pe->Enabled=true;
         zdl=true;
         break;
        }
      }
     if (zdl==false)pe->Enabled=false;
     if (pe->Caption=="重新登录(&F)")
      ToolButton1->Enabled=pe->Enabled;
     if (pe->Caption=="报装业务受理(&A)")
      ToolButton3->Enabled=pe->Enabled;
     if (pe->Caption=="手工抄表(&C)")
      ToolButton4->Enabled=pe->Enabled;
     if (pe->Caption=="计算电费(&D)")
      ToolButton5->Enabled=pe->Enabled;
     if (pe->Caption=="收费(&G)")
      ToolButton6->Enabled=pe->Enabled;
     if (pe->Caption=="表户综合统计(&C)")
      ToolButton7->Enabled=pe->Enabled;

    }
  }

 }
void __fastcall TFmain::S12Click(TObject *Sender)
{
   new TFxgmm(Application);
 tcjc=S12->Caption;
 gnks(S12->Caption);
}
//---------------------------------------------------------------------------

void __fastcall TFmain::S14Click(TObject *Sender)
{
   CLogin->ShowModal();
   Menuint();

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

void __fastcall TFmain::S13Click(TObject *Sender)
{
   Fczrz=new TFczrz(Application);
   Fczrz->ShowModal();
   delete Fczrz;
   tcjc=S13->Caption;
   gnks(S13->Caption);
}
//---------------------------------------------------------------------------
void TFmain::gnks(AnsiString gn)
{
 YDData->TBczrz->Append();
  YDData->TBczrz->FieldByName("station")->AsString=CLogin->gzzname;
  YDData->TBczrz->FieldByName("name")->AsString=CLogin->czyname;
  YDData->TBczrz->FieldByName("cznr")->AsString=gn.SubString(1,gn.Length()-4);
  YDData->TBczrz->FieldByName("dfrq")->AsString=CLogin->ywrq;
  YDData->TBczrz->FieldByName("date")->AsString=DateToStr(Date());
  YDData->TBczrz->FieldByName("qssj")->AsString=TimeToStr(Time());
  YDData->TBczrz->Post();
}
//------------
void TFmain::gnjs(AnsiString gnbt)
{
  YDData->TBczrz->First();
   while (!YDData->TBczrz->Eof)
   {
    if (YDData->TBczrz->FieldByName("station")->AsString==CLogin->gzzname&&
    YDData->TBczrz->FieldByName("name")->AsString==CLogin->czyname&&
    Trim(YDData->TBczrz->FieldByName("zzsj")->AsString)==""&&
    YDData->TBczrz->FieldByName("cznr")->AsString==gnbt.SubString(1,gnbt.Length()-4))
      {
       YDData->TBczrz->Edit();
       YDData->TBczrz->FieldByName("zzsj")->AsString=TimeToStr(Time());
       YDData->TBczrz->Post();
       break;
      }
    YDData->TBczrz->Next();
   }
}

void __fastcall TFmain::W13Click(TObject *Sender)
{
  OpenDialog1->Title ="请选择背景图画";
  OpenDialog1->InitialDir=ExtractFilePath(Application->ExeName)+"bmps\\";
  OpenDialog1->Filter = "bmp files (*.bmp)|*.bmp|All files (*.*)|*.*";
  if(OpenDialog1->Execute())bjbmp=OpenDialog1->FileName;
  TRect rect ;                      // calculate size of backgnd
  ::GetClientRect (ClientHandle, (RECT *) &rect) ;
  Graphics::TBitmap *MemBitmap = new Graphics::TBitmap;
   MemBitmap->LoadFromFile(bjbmp);		// 动态装入位图文件
   Fmain->Canvas->StretchDraw(rect, MemBitmap);         // 显示位图图形
   if (MemBitmap->Width<Fmain->Width)MemBitmap->Width=Fmain->Width;
   if (MemBitmap->Height<Fmain->Height)MemBitmap->Height=Fmain->Height;
   HDC Hdc = GetDC(ClientHandle);
   ::BitBlt(Hdc,0,0,MemBitmap->Width, MemBitmap->Height,
           MemBitmap->Canvas->Handle,0,0,SRCCOPY);
  MemBitmap->FreeImage();
  delete MemBitmap; // delete the temporary bitmap.

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


void __fastcall TFmain::H13Click(TObject *Sender)
{
  new TFver(Application);        
}
//---------------------------------------------------------------------------


void __fastcall TFmain::I13Click(TObject *Sender)
{
  Fpqdm=new TFpqdm(Application);
  Fpqdm->ShowModal();
  delete Fpqdm;
   tcjc=I13->Caption;
   gnks(I13->Caption);
}
//---------------------------------------------------------------------------

void __fastcall TFmain::I15Click(TObject *Sender)
{
  Fgds=new TFgds(Application);
  Fgds->ShowModal();
  delete Fgds;
  tcjc=I15->Caption;
  gnks(I15->Caption);
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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