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

📄 fhctrl.cpp

📁 民航飞机生产管理系统,实现了飞机定检坚控,小时卡起落卡等的坚控,并能生成工作任务包
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "fhctrl.h"
#include "dm.h"
#include "hoursrep.h"
#include "main.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "KsSkinButtons"
#pragma link "KsSkinCheckBoxs"
#pragma link "KsSkinForms"
#pragma link "KsSkinGroupBoxs"
#pragma link "KsSkinLabels"
#pragma link "se_controls"
#pragma resource "*.dfm"
TForm31 *Form31;
int fhqidian[100],fhdangqian[100],fhjiange[100];
AnsiString fhjihao[100],fhleixing[100],tiaojian;
TColor fhcolor[100];
int controlnum,fhcishu[100];
extern AnsiString lujing;
 TCheckBox* xuanzhong[100];
//---------------------------------------------------------------------------
__fastcall TForm31::TForm31(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm31::FormPaint(TObject *Sender)
{
int y=int(controlnum/3)+1;
int x=3;
int heightfh=int(Height/(y+1));
if(heightfh>60)heightfh=60;
int widthfh=180;
int widthshiji;
AnsiString fhname,qidian,zhongdian;
 Canvas->Brush->Color=clBtnFace;
        Canvas->Font->Name = "宋体";
        Canvas->Font->Size=10;

for(int j=0;j<y;j++)
for(int i=0;i<x;i++)
  {   if(fhjiange[j*3+i]==0)
        continue;
        if(fhleixing[j*3+i]=="D")
        {
        fhname=IntToStr(fhjiange[j*3+i])+"天非例行卡";
        qidian=DateToStr((fhqidian[j*3+i]));
        zhongdian=DateToStr((fhqidian[j*3+i]+fhjiange[j*3+i]));
        }
        else

        if(fhleixing[j*3+i]=="M")
        {
        fhname=IntToStr(fhjiange[j*3+i]/30)+fhleixing[j*3+i];
        qidian=DateToStr((fhqidian[j*3+i]));
        zhongdian=DateToStr((fhqidian[j*3+i]+fhjiange[j*3+i]));
        }
        else
        {
        fhname=IntToStr(fhjiange[j*3+i])+fhleixing[j*3+i];
        qidian=IntToStr(fhqidian[j*3+i])+fhleixing[j*3+i];
        zhongdian=IntToStr(fhqidian[j*3+i]+fhjiange[j*3+i])+fhleixing[j*3+i];
        }
         Canvas->Brush->Color=clBtnFace;
         Canvas->Font->Color=clPurple;
         Canvas->TextOutA(i*widthfh+25,j*heightfh+int(2*heightfh/3)+2,qidian);
         Canvas->TextOutA(i*widthfh+widthfh-50,j*heightfh+int(2*heightfh/3)+2,zhongdian);
         Canvas->Font->Color=clBlue;
      Canvas->TextOutA(i*widthfh+25,j*heightfh+5,fhjihao[j*3+i]+"飞机"+fhname+"监控条");

      Canvas->Rectangle(i*widthfh+25,j*heightfh+int(heightfh/3),(i+1)*widthfh,j*heightfh+int(2*heightfh/3));
      Canvas->Brush->Color=fhcolor[j*3+i];
    widthshiji= int(i*widthfh+25+(widthfh-25)*(fhdangqian[j*3+i]-fhqidian[j*3+i])/fhjiange[j*3+i]);
      Canvas->FillRect(Rect(i*widthfh+26,j*heightfh+int(heightfh/3)+1,widthshiji
      ,j*heightfh+int(2*heightfh/3)-1));
  }
}
//---------------------------------------------------------------------------


void __fastcall TForm31::FormCreate(TObject *Sender)
{
Left=220;
Top=80;       
}
//---------------------------------------------------------------------------



void TForm31::fhprint()
{
        //TODO: Add your source code here
        TMemo* m1=new TMemo(Form31->Handle);
m1->Lines->LoadFromFile(lujing+"plane.txt");

     int tempint;
 for(int j=0;j<m1->Lines->Count;j++)
 {       tiaojian="";
        AnsiString jian,temp1,temp2,jixing;
        temp1=temp2="";
        for(int i=0;i<controlnum;i++)
        {
        if((fhjihao[i]==m1->Lines->Strings[j])&&xuanzhong[i]->Checked)
        {
        if(redck->Checked&&fhcolor[i]==clYellow&&!yellowck->Checked)
        continue;
        if(yellowck->Checked&&!redck->Checked&&fhcolor[i]==clRed)
        continue;


                if(!(temp1==fhleixing[i]&&temp2==IntToStr(fhjiange[i])))
                {

                temp1=fhleixing[i];
                temp2=IntToStr(fhjiange[i]);
                jian=IntToStr(fhjiange[i]);
                if(temp1=="M")
                jian=IntToStr(fhjiange[i]/30);
                if(StrToInt(fhjihao[i])>2200)
                jixing="MD90";
                else
                jixing="MD82";
                if(tiaojian=="")
                tiaojian="机型 = '"+jixing+"' AND 类型 = '"+temp1+"' AND 间隔= '"+jian+"'";
                else
                tiaojian=tiaojian+" OR 机型 = '"+jixing+"' AND 类型 = '"+temp1+"' AND 间隔= '"+jian+"'";
                if(gaixie->Checked)
                {
                DataModule1->md82ctrl->Filtered=false;
                DataModule1->md82ctrl->Filter="备注 = '新' AND 机号 = '"+m1->Lines->Strings[j]+"' AND 类型 = '"+temp1+"' AND 间隔 = '"+jian+"'";
                DataModule1->md82ctrl->Filtered=true;
                       if(DataModule1->md82ctrl->RecordCount!=0)
                        {
                           tempint=DataModule1->md82cishu->AsInteger;
                           DataModule1->md82ctrl->Edit();
                          // DataModule1->md82cishu->AsInteger=tempint++;
                         //  DataModule1->md82shangcishijian->AsInteger=fhdangqian[i];
                           DataModule1->md82beizhu->AsString="";
                           DataModule1->md82ctrl->Post();
                        }
                        DataModule1->md82ctrl->Append();
                        DataModule1->md82jihao->AsInteger=StrToInt(m1->Lines->Strings[j]);
                        DataModule1->md82jixing->AsString=jixing;
                        DataModule1->md82leixing->AsString=temp1;
                        DataModule1->md82shangcishijian->AsInteger=fhdangqian[i];
                        DataModule1->md82cishu->AsInteger=tempint+1;
                        DataModule1->md82beizhu->AsString="新";
                        DataModule1->md82jiange->AsInteger=StrToInt(jian);
                }
                 }
          }}
          if(tiaojian=="")continue;
    DataModule1->hours->Filtered=false;
 DataModule1->hours->Filter=tiaojian;
 DataModule1->hours->Filtered=true;
 if(DataModule1->hours->RecordCount!=0)
 {
 TForm32* f32=new TForm32(this);
 f32->title->Caption=m1->Lines->Strings[j]+"小时卡、起落卡工卡清单";
  f32->QuickRep1->Prepare();
 f32->QuickRep1->Preview();
 delete f32;
 }
  }
  delete m1;
}

void __fastcall TForm31::Button1Click(TObject *Sender)
{
fhprint();        
}
//---------------------------------------------------------------------------


void __fastcall TForm31::Button2Click(TObject *Sender)
{
Close();        
}
//---------------------------------------------------------------------------

void __fastcall TForm31::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->N39->Checked=false;
for(int i=0;i<controlnum;i++)
delete xuanzhong[i];
}
//---------------------------------------------------------------------------

void __fastcall TForm31::FormShow(TObject *Sender)
{
int y=int(controlnum/3)+1;
int x=3;
int heightfh=int(Height/(y+1));
if(heightfh>60)heightfh=60;
int widthfh=180;
for(int j=0;j<y;j++)
for(int i=0;i<x;i++)
{
if(j*3+i>=controlnum)break;
 xuanzhong[j*3+i]=new TCheckBox(this);
 xuanzhong[j*3+i]->Parent=this;
 xuanzhong[j*3+i]->Caption="";
 xuanzhong[j*3+i]->Width=15;
 xuanzhong[j*3+i]->Left=10+widthfh*i;
 xuanzhong[j*3+i]->Top= j*heightfh+int(heightfh/3)+1;
}
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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