📄 firstgunit.pas
字号:
unit FirstGUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons;
type
TMainFrm = class(TForm)
Label18: TLabel;
Label17: TLabel;
Label19: TLabel;
Label16: TLabel;
Label15: TLabel;
Edit_W1: TEdit;
Edit_W2: TEdit;
Edit_W3: TEdit;
Edit_B11: TEdit;
Edit_B34: TEdit;
Edit_B14: TEdit;
Edit_B12: TEdit;
Edit_B23: TEdit;
Edit_B22: TEdit;
Edit_B44: TEdit;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Edit_W4: TEdit;
Edit_B41: TEdit;
Edit_B33: TEdit;
Edit_B32: TEdit;
Label1: TLabel;
Edit_B21: TEdit;
Edit_B43: TEdit;
Edit_B31: TEdit;
Edit_B24: TEdit;
Edit_B42: TEdit;
ButtonJ: TButton;
BitBtn1: TBitBtn;
Edit_B13: TEdit;
Label2: TLabel;
Label3: TLabel;
Label12: TLabel;
Edit_B15: TEdit;
Edit_B25: TEdit;
Edit_B35: TEdit;
Edit_B45: TEdit;
ButtonP: TButton;
Edit_B1: TEdit;
Label5: TLabel;
Label6: TLabel;
Edit_B2: TEdit;
Label7: TLabel;
Label4: TLabel;
Edit_B3: TEdit;
Label10: TLabel;
Edit_B4: TEdit;
Label11: TLabel;
Edit_B5: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ButtonJClick(Sender: TObject);
procedure ButtonPClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainFrm: TMainFrm;
implementation
//uses PartUnit,Introduce2Unit; by zxp
uses Introduce2Unit;
{$R *.dfm}
procedure TMainFrm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TMainFrm.ButtonJClick(Sender: TObject);
begin
//判断各隶属度的值与权值是否为空
if (Edit_W1.Text='')or(Edit_B11.Text='')or(Edit_B12.Text='')or(Edit_B13.Text='')or(Edit_B14.Text='')or(Edit_B15.Text='')
or(Edit_W2.Text='')or(Edit_B21.Text='')or(Edit_B22.Text='')or(Edit_B23.Text='')or(Edit_B24.Text='')or(Edit_B25.Text='')
or(Edit_W3.Text='')or(Edit_B31.Text='')or(Edit_B32.Text='')or(Edit_B33.Text='')or(Edit_B34.Text='')or(Edit_B35.Text='')
or(Edit_W4.Text='')or(Edit_B41.Text='')or(Edit_B42.Text='')or(Edit_B43.Text='')or(Edit_B44.Text='')or(Edit_B45.Text='')
then
showmessage('对不起!请您填入完整的权重值或隶属度值!')
//若不为空,可以计算。
else
self.Edit_B1.Text:=FloatToStr(
(Round
(
(StrToFloat(Edit_W1.Text)*StrToFloat(Edit_B11.Text)+
StrToFloat(Edit_W2.Text)*StrToFloat(Edit_B21.Text)+
StrToFloat(Edit_W3.Text)*StrToFloat(Edit_B31.Text)+
StrToFloat(Edit_W4.Text)*StrToFloat(Edit_B41.Text)
)*1000
)
)/1000
);
self.Edit_B2.Text:=FloatToStr(
(Round
(
(StrToFloat(Edit_W1.Text)*StrToFloat(Edit_B12.Text)+
StrToFloat(Edit_W2.Text)*StrToFloat(Edit_B22.Text)+
StrToFloat(Edit_W3.Text)*StrToFloat(Edit_B32.Text)+
StrToFloat(Edit_W4.Text)*StrToFloat(Edit_B42.Text)
)*1000
)
)/1000
);
self.Edit_B3.Text:=FloatToStr(
(Round
(
(StrToFloat(Edit_W1.Text)*StrToFloat(Edit_B13.Text)+
StrToFloat(Edit_W2.Text)*StrToFloat(Edit_B23.Text)+
StrToFloat(Edit_W3.Text)*StrToFloat(Edit_B33.Text)+
StrToFloat(Edit_W4.Text)*StrToFloat(Edit_B43.Text)
)*1000
)
)/1000
);
self.Edit_B4.Text:=FloatToStr(
(Round
(
(StrToFloat(Edit_W1.Text)*StrToFloat(Edit_B14.Text)+
StrToFloat(Edit_W2.Text)*StrToFloat(Edit_B24.Text)+
StrToFloat(Edit_W3.Text)*StrToFloat(Edit_B34.Text)+
StrToFloat(Edit_W4.Text)*StrToFloat(Edit_B44.Text)
)*1000
)
)/1000
);
self.Edit_B5.Text:=FloatToStr(
(Round
(
(StrToFloat(Edit_W1.Text)*StrToFloat(Edit_B15.Text)+
StrToFloat(Edit_W2.Text)*StrToFloat(Edit_B25.Text)+
StrToFloat(Edit_W3.Text)*StrToFloat(Edit_B35.Text)+
StrToFloat(Edit_W4.Text)*StrToFloat(Edit_B45.Text)
)*1000
)
)/1000
);
if ((strToFloat(Edit_B1.Text)+strToFloat(Edit_B2.Text)+strToFloat(Edit_B3.Text)+
strToFloat(Edit_B4.Text)+strToFloat(Edit_B5.Text))<>1)
then
ShowMessage('要求权重值相加之和等于1!');
end;
procedure TMainFrm.ButtonPClick(Sender: TObject);
const
a=95;
b=80;
c=60;
d=40;
e=20;
var
PjStr:string;
Score:integer;
begin
Score:=Round( StrToFloat(Edit_B1.Text)*a+
StrToFloat(Edit_B2.Text)*b+
StrToFloat(Edit_B3.Text)*c+
StrToFloat(Edit_B4.Text)*d+
StrToFloat(Edit_B5.Text)*e
);
PjStr:=' 得分:'+IntToStr(Score)+#13#10;
Score:=Trunc(Score/10);
case Score of
9: PjStr:=PjStr+' 本城市生产安全事故应急管理能力:很安全!';
7,8: PjStr:=PjStr+' 本城市生产安全事故应急管理能力:较安全!';
5,6: PjStr:=PjStr+' 本城市生产安全事故应急管理能力:一般安全!';
2,3,4: PjStr:=PjStr+' 本城市生产安全事故应急管理能力:不安全!';
0,1: PjStr:=PjStr+' 本城市生产安全事故应急管理能力:很不安全!';
end;
//ShowMessage(PjStr);
MessageBox(0,PAnsiChar(PjStr),'本城市生产安全事故评价结果', mb_OK);
end;
procedure TMainFrm.BitBtn1Click(Sender: TObject);
begin
Introduce2Form.Show;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -