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

📄 u_main.pas

📁 钢筋拉伸系统,是一个图形和数据库结合在一起的技术体现
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit U_Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons, ComCtrls, TComm1,u_public,StrUtils;

type
  TFrm_Main = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Pan: TPanel;
    GroupBox3: TGroupBox;
    GroupBox4: TGroupBox;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Lvw_Lb: TListView;
    Label10: TLabel;
    Label11: TLabel;
    UpDown1: TUpDown;
    Lbl_Xg: TLabel;
    UpDown2: TUpDown;
    Lbl_Yg: TLabel;
    Edit4: TEdit;
    Edit5: TEdit;
    Pic: TPaintBox;
    ColorDialog: TColorDialog;
    Pic_Y: TPaintBox;
    Pic_X: TPaintBox;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    button1: TButton;
    Comm: TComm;
    Timer1: TTimer;
    Edit6: TEdit;
    Edit7: TEdit;
    Panel2: TPanel;
    Lbl_fh: TLabel;
    Panel3: TPanel;
    Panel4: TPanel;
    Lbl_wy: TLabel;
    Lbl_sj: TLabel;
    FileOpen: TOpenDialog;
    procedure Com_data();
    procedure Line_Draw();
    procedure FormResize(Sender: TObject);
    procedure Line(x:integer;y:integer);
    procedure UpDown2Click(Sender: TObject; Button: TUDBtnType);
    procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);
    procedure Edit4Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormPaint(Sender: TObject);
    procedure PicPaint(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure  Last_Fm();
    procedure Button5Click(Sender: TObject);
    procedure Edit5Click(Sender: TObject);
    procedure PicMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);

  private
    { Private declarations }
  public
    { Public declarations }
  end;
  type
   Data_xx=array[0..2000] of real;

var
  Frm_Main: TFrm_Main;
   COm_Count:integer;
   Data_count:integer;
   M_Fh,M_WY:Real;
   Tim_Count:integer;
   tim_sj:int64;
   X_axis_Bl,Y_Axis_Bl:real;
   data_x:data_xx;
   data_y:data_xx;

implementation
 uses u_dl,u_dlkl,u_help,u_kl_set,u_set_system,u_sys_ini,u_sySet,u_xgkl;
{$R *.dfm}

procedure Tfrm_main.Line(x:integer;y:integer);
 var
pt:TPoint;
i:integer;
begin
   pan.Color :=edit4.Color;
   pic.Canvas.Pen.Style:=psdashdot;
   pic.Canvas.Rectangle(0,0,self.Width,self.Height);
    // pic.Refresh;
     pic_x.Refresh;
     pic_y.Refresh;
   pic.Canvas.Pen.Color:=RGB(255,255,255);
  for  i:=1 to x  do
    begin
      pic.Canvas.MoveTo(0,Trunc(pic.height-pic.height/x*i));
      pt.X :=Trunc(self.pic.Width);
      pt.Y:=Trunc(pic.height-pic.height/x*i);

      pic.Canvas.LineTo(pt.X ,pt.Y );
    end;
   for  i:=1 to y  do
    begin
      pic.Canvas.MoveTo(Trunc(pic.width-pic.width/y*i),0);
      pt.X :=Trunc(pic.width-pic.width/y*i);
      pt.Y:=Trunc(self.Pic.Height);

      pic.Canvas.LineTo(pt.X ,pt.Y );
    end;

  for i:=0 to 50 do    //Y轴
     begin
           pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i));
           pic_y.Canvas.LineTo(35,trunc(pic_y.Height/50*i));

         if i=0 then   //最大点
            begin
          pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i+1));
          pic_y.Canvas.LineTo(30,trunc(pic_y.Height/50*i+1));
          pic_y.Canvas.TextOut(16,trunc(pic_y.Height/50*i+1),floattostr(int(ini_data.FhMax)));
          pic_y.Canvas.TextOut(2,trunc(pic_y.Height/50*i+19),'(负荷KN)');
          // floattostr(trunc(pic.Height/y_axis_bl))
            end
         else if i=10 then
            begin
             pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i));
              pic_y.Canvas.LineTo(30,trunc(pic_y.Height/50*i));
               pic_y.Canvas.TextOut(16,trunc(pic_y.Height/50*i+1),floattostr(int(ini_data.FhMax/5*4)));
            end
         else if i=20 then
            begin
            pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i));
            pic_y.Canvas.LineTo(30,trunc(pic_y.Height/50*i));
            pic_y.Canvas.TextOut(16,trunc(pic_y.Height/50*i+1),floattostr(int(ini_data.FhMax/5*3)));
            end
         else if i=30 then
            begin
             pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i));
             pic_y.Canvas.LineTo(30,trunc(pic_y.Height/50*i));
             pic_y.Canvas.TextOut(16,trunc(pic_y.Height/50*i+1),floattostr(int(ini_data.FhMax/5*2)));
            end
         else if i=40 then
            begin
            pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i));
            pic_y.Canvas.LineTo(30,trunc(pic_y.Height/50*i));
            pic_y.Canvas.TextOut(16,trunc(pic_y.Height/50*i+1),floattostr(int(ini_data.FhMax/5)));
            end
         else if i=50 then
            begin
             pic_y.Canvas.MoveTo(pic_y.Width,trunc(pic_y.Height/50*i-1));
             pic_y.Canvas.LineTo(30,trunc(pic_y.Height/50*i-1));
             pic_y.Canvas.TextOut(16,trunc(pic_y.Height/50*i-12),'0');
            end
      end;
    for i:=0 to 50 do    //X轴
     begin
           pic_x.Canvas.MoveTo(trunc(pic_x.Width/50*i),0);
           pic_x.Canvas.LineTo(trunc(pic_x.Width/50*i),6);

         if i=0 then   //最小点
            begin
            pic_x.Canvas.MoveTo(trunc(pic_x.Width/50*i),0);
            pic_x.Canvas.LineTo(trunc(pic_x.Width/50*i),10);
            pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i),13,'0');
            end
         else if i=10 then
            begin
             pic_x.Canvas.MoveTo(trunc(pic_x.Width/50*i),0);
           pic_x.Canvas.LineTo(trunc(pic_x.Width/50*i),10);
               pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i),13,floattostr(int(ini_data.wyMax/5)));
            end
         else if i=20 then
            begin
              pic_x.Canvas.MoveTo(trunc(pic_x.Width/50*i),0);
           pic_x.Canvas.LineTo(trunc(pic_x.Width/50*i),10);
            pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i),13,floattostr(int(ini_data.wyMax/5*2)));
            end
         else if i=30 then
            begin
              pic_x.Canvas.MoveTo(trunc(pic_x.Width/50*i),0);
           pic_x.Canvas.LineTo(trunc(pic_x.Width/50*i),10);
             pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i),13,floattostr(int(ini_data.wyMax/5*3)));
            end
         else if i=40 then
            begin

            pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i),13,floattostr(int(ini_data.wyMax/5*4)));
            end
         else if i=50 then
            begin
               pic_x.Canvas.MoveTo(trunc(pic_x.Width/50*i),0);
               pic_x.Canvas.LineTo(trunc(pic_x.Width/50*i),6);
               pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i)-16,9,floattostr(int(ini_data.wyMax)));
              pic_x.Canvas.TextOut(trunc(pic_x.Width/50*i)-50,23,'(位移MM)');
            end

     end;


end;
procedure TFrm_Main.FormResize(Sender: TObject);
begin
   panel1.Left:=Trunc((self.Width-panel1.Width)/2);
   panel1.Top:=trunc((self.Height-panel1.Height)/2);
end;

procedure TFrm_Main.UpDown2Click(Sender: TObject; Button: TUDBtnType);
begin

    lbl_yg.Caption:=Inttostr(self.UpDown2.Position);
    line(self.UpDown1.Position,self.UpDown2.Position);
    Line_Draw;
end;

procedure TFrm_Main.UpDown1Click(Sender: TObject; Button: TUDBtnType);
begin
    lbl_xg.Caption:=Inttostr(self.UpDown1.Position);
    line(self.UpDown1.Position,self.UpDown2.Position);
    Line_Draw;
end;

procedure TFrm_Main.Edit4Click(Sender: TObject);
begin
   self.ColorDialog.Execute;
   edit4.Color:=colordialog.Color;
   line(self.UpDown1.Position,self.UpDown2.Position);
   Line_Draw;
end;

procedure TFrm_Main.FormShow(Sender: TObject);
var bb:string;
begin

   tim_count:=0;
   tim_sj:=0;
   bb:= Extractfilepath(application.ExeName);
  // application.MessageBox('',)
   //if application.GetNamePath+'use.dll'='' then
 

   x_axis_bl:=ini_data.WyMax;
   Y_axis_bl:=ini_data.FhMax;
   updown1.Position:=ini_data.wyGrid;
   updown2.Position:=ini_data.FhGrid;
   lbl_xg.Caption:=inttostr(ini_data.WyGrid);
   lbl_yg.Caption:=inttostr(ini_data.fhGrid);
   edit4.Color:=trunc(ini_data.BackColor);
   edit5.Color:=trunc(ini_data.LineColor);
   line(self.UpDown1.Position,self.UpDown2.Position);
   

end;


procedure TFrm_Main.FormPaint(Sender: TObject);
begin
 
  line(self.UpDown1.Position,self.UpDown2.Position);
   Line_Draw;
end;

procedure TFrm_Main.PicPaint(Sender: TObject);
begin
   line(self.UpDown1.Position,self.UpDown2.Position);
      Line_Draw;
end;

procedure TFrm_Main.Button7Click(Sender: TObject);
begin
  self.Close;
end;

⌨️ 快捷键说明

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