Реферат на тему "Расчет стоимости пластиковых оконных конструкций и дверей"




Реферат на тему

текст обсуждение файлы править категориядобавить материалпродать работу




Курсовая на тему Расчет стоимости пластиковых оконных конструкций и дверей

скачать

Найти другие подобные рефераты.

Курсовая *
Размер: 146.86 кб.
Язык: русский
Разместил (а): Александр
Предыдущая страница 1 2 3 4 5 6 7 Следующая страница

добавить материал

if msg1.Sender.Hint='4' then begin p:=pos('#балкон1',nam);delete(nam,p,8);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='5' then begin p:=pos('#Балкон2',nam);delete(nam,p,8);msg1.Sender.Destroy;end;
if msg1.Sender.Hint='6' then begin p:=pos('#Вход',nam);delete(nam,p,5);msg1.Sender.Destroy;end;end;end;
procedure TForm7.SpeedButton13Click(Sender: TObject);
var  B: TBitmap;  srcRect,dstRect: TRect;
begin
B:=TBitmap.Create;
with dstRect do begin
Left:=0;
Top:=0;
Right:=Panel2.Width+1;
Bottom:=Panel2.Height+1;  end;
with srcRect do begin
Left:=Panel2.Left+145;
Right:=Panel2.Left+Panel2.Width+145;
Top:=Panel2.Top+10;
Bottom:=Panel2.Top+Panel2.Height+10;  end;
B.Width:=Panel2.Width;
B.Height:=Panel2.Height;
B.Canvas.CopyRect(dstRect,Self.Canvas,srcRect);
B.PixelFormat:=pf1bit;
B.SaveToFile(dir+'\Шаблоны\'+nam+'.bmp');
ShowMessage('Шаблон успешно сохранился!');
B.Free;end;
procedure TForm7.SpeedButton12Click(Sender: TObject);
Var s:string;d,a:integer;
begin
if form7.OpenDialog1.Execute then begin
image2.Top:=Panel2.Top-10;
image2.Left:=Panel2.Left-130;
image2.AutoSize:=true;
image2.Transparent:=FaLSE;
Image2.Picture.LoadFromFile(OpenDialog1.FileName);
nam:=OpenDialog1.FileName;
getdir(0,s);d:=pos(s,nam);a:=pos('#',nam);
delete(nam,d,a-1);d:=pos('.',nam);
delete(nam,d,4);end;end;
procedure TForm7.SpeedButton14Click(Sender: TObject);
begin
nam:=nam+'#Поворотный';
b1 := TBitBtn.Create(Self);
with b1 do begin
b1.Hint:='2';
Left := 20;
Top := 20;
Width := 60;
Height := 100;
Parent := Panel2;
Glyph.LoadFromFile(dir+'\Иконки\поворотный1.bmp');end;end;
procedure TForm7.SpeedButton15Click(Sender: TObject);
begin
nam:=nam+'#Поворотный';
b1 := TBitBtn.Create(Self);
with b1 do begin
b1.Hint:='2';
Left := 20;
Top := 20;
Width := 60;
Height := 100;
Parent := Panel2;
Glyph.LoadFromFile(dir+'\Иконки\поворотный2.bmp');end;end;
procedure TForm7.SpeedButton16Click(Sender: TObject);
begin
nam:=nam+'#Откидной';
b1 := TBitBtn.Create(Self);
with b1 do begin
b1.Hint:='3';
Left := 20;
Top := 20;
Width := 60;
Height := 100;
Glyph.LoadFromFile(dir+'\Иконки\откидной2.bmp');
Parent := Panel2;end;end;
procedure TForm7.SpeedButton17Click(Sender: TObject);
begin
if (Combobox1.Text='')or(Combobox3.Text='')or(Combobox2.Text='') then
Showmessage('Введите все необходимые данные!') else begin
if combobox1.Text='Оконные модули' then
fail:='\Цены\Окна\'
else fail:='\Цены\Двери\';
if (Combobox3.Text='Exprof58mm')and (Combobox2.Text='Однокамерный') then
Put:=fail+'Exprof58mm24.dat';
if (Combobox3.Text='Exprof58mm')and (Combobox2.Text='Двухкамерный') then
Put:=fail+'Exprof58mm32.dat';
if (Combobox3.Text='Exprof58mm')and (Combobox2.Text='Одно стекло') then begin
Put:=fail+'Exprof58mm24.dat';
odn:='1';end;
if (Combobox3.Text='Exprof101mm')and (Combobox2.Text='Однокамерный') then
Put:=fail+'Exprof101mm24.dat';
if (Combobox3.Text='Exprof101mm')and (Combobox2.Text='Двухкамерный') then
Put:=fail+'Exprof101mm32.dat';
if (Combobox3.Text='Exprof101mm')and (Combobox2.Text='Одно стекло') then begin
Put:=fail+'Exprof101mm24.dat';odn:='1';
end; Showmessage('Цена успешно загружена!');end;end;
procedure TForm7.SpeedButton10Click(Sender: TObject);
var  f: LongInt;
begin
if itog<>'' then begin
if kolok>0 then kolok:=kolok-1;
tek:=tek+1;
label7.Caption:=inttostr(kolok);
label5.Caption:=inttostr(tek);
end else Showmessage('Сначала расчитайте предыдущее окно!');
nam:='';okn:=okn+1;
for f := 0 to ComponentCount - 1 do begin
if (Components[f] is TBitBtn) then
(Components[f] as TBitBtn).Visible:=false;end;end;
procedure TForm7.SpeedButton7Click(Sender: TObject);
begin  Form7.Free; end;
procedure TForm7.FormShow(Sender: TObject);
begin tek:=1;
label7.Caption:=inttostr(kolok);
label5.Caption:=inttostr(tek);end;end.
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Spin, Unit7,unit1, Buttons, ComCtrls, jpeg, ExtCtrls, Grids;
type
TForm8 = class(TForm)
Image1: TImage; Label4: TLabel;SpeedButton2: TSpeedButton;
SpeedButton9: TSpeedButton;Label9: TLabel; SpeedButton3: TSpeedButton;
SpeedButton1: TSpeedButton;Label6: TLabel; Label5: TLabel;SpinEdit1: TSpinEdit;
SpinEdit2: TSpinEdit;Label2: TLabel;Label1: TLabel; Label3: TLabel;
StringGrid1: TStringGrid; Bevel3: TBevel; Label7: TLabel;  Label8: TLabel;
Bevel1: TBevel; Label14: TLabel;Bevel2: TBevel; Label13: TLabel;Label10: TLabel;
SpeedButton5: TSpeedButton; SpeedButton6: TSpeedButton; Label11: TLabel;
Label12: TLabel; SpeedButton7: TSpeedButton; SpeedButton8: TSpeedButton;
SpeedButton4: TSpeedButton; Label15: TLabel; SpeedButton10: TSpeedButton;
SpeedButton11: TSpeedButton; SpeedButton12: TSpeedButton;
StringGrid2: TStringGrid; Label16: TLabel; Label17: TLabel; Label18: TLabel;
Label19: TLabel; SpeedButton13: TSpeedButton; SpeedButton14: TSpeedButton;
Label20: TLabel;    procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton9Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure SpeedButton10Click(Sender: TObject);
procedure SpeedButton11Click(Sender: TObject);
procedure SpeedButton12Click(Sender: TObject);
procedure SpeedButton8Click(Sender: TObject);
procedure SpeedButton13Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SpeedButton14Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var  Form8: TForm8;  p:integer;  n,path,one,two,tri,minv,minh,maxv,maxh:string;
plos,res:real;  l,h,impost,pay,stol,e,dob:integer;  start:Boolean;
Razpod,Markp,Podsen,So9,Lam,SOB,Ton,Maskit:string;
implementation
uses Unit15, Unit17, Unit18, Unit19, Unit20, Unit9, Unit14;
{$R *.dfm}
procedure TForm8.SpeedButton1Click(Sender: TObject);
begin
WinExec('c:/windows/system32/calc.exe',SW_showNormal);
end;
procedure TForm8.SpeedButton2Click(Sender: TObject);
var  f: Integer;
begin
if StringGrid2.Cells[4,1]<>'' then
ton:='Тонировка:'+ton;
if StringGrid2.Cells[0,1]<>'' then
SOB:='Общая площадь:'+StringGrid2.Cells[0,1];
if StringGrid2.Cells[6,1]<>'' then
itog:=StringGrid2.Cells[6,1]+'у.е.';
if StringGrid2.Cells[3,1]='да' then
So9:='Профиль SO9 Учтен';
if StringGrid2.Cells[1,1]<>'' then
mon:=StringGrid2.Cells[1,1];
if StringGrid2.Cells[5,1]<>'' then
Lam:='Ламинирование:'+StringGrid2.Cells[5,1];
for f := 0 to ComponentCount - 1 do begin
if (Components[f] is TSpinEdit) then
(Components[f] as TSpinEdit).Value :=0;
Stringgrid1.Cols[0].Clear; Stringgrid1.Cols[1].Clear;
Stringgrid1.Cols[2].Clear; Stringgrid1.Cols[3].Clear;
Stringgrid2.Rows[1].Clear;SpeedButton5.Visible:=false;
SpeedButton6.Visible:=False;SpeedButton7.Visible:=false;
SpeedButton10.Visible:=false;SpeedButton11.Visible:=false;
SpeedButton14.Visible:=false;SpeedButton8.Visible:=false; end;close;end;
procedure TForm8.SpeedButton9Click(Sender: TObject);
label 1,2,3,4,5,6;
Var i,b:integer;nam1:string;f,dop:textfile;
begin b:=1;
SpeedButton3.Visible:=true;SpeedButton9.Visible:=false;
{$I-}
AssignFile(f,dir+put);
{$I+}
If IOResult=0 then begin
Reset(f);
while not EoF(f) do begin
readln(f, one);
readln(f, two);
readln(f, tri); end;CloseFile(f); end;
nam1:=nam;delete(nam1,1,1);nam1:=nam1+'#';
for i:=1 to length(nam1) do begin
if nam1[i]<>'#'then n:=n+nam1[i]
else  begin if n='Глухой' then begin
Label4.Caption:='Глухой';
pay:=strtoint(one);
if odn='1' then
pay:=pay-6;
impost:=impost+1;
{$I-}
AssignFile(dop,dir+'\Технические допуски\Глухой модуль.dat');
{$I+}
If IOResult=0 then begin
Reset(dop);
while not EoF(dop) do begin
readln(dop, minv);
readln(dop, minh);
readln(dop, maxv);
readln(dop, maxh);  end; CloseFile(dop); end;
SpinEdit1.MinValue:=strtoint(minh);
SpinEdit1.MaxValue:=strtoint(maxh);
SpinEdit2.MinValue:=strtoint(minv);
SpinEdit2.MaxValue:=strtoint(maxv);
SpinEdit1.Value:=strtoint(minh);
SpinEdit2.Value:=strtoint(minv);
ShowMessage('Введите размеры и нажмите "ОК"');
1:application.ProcessMessages;
if start=true then begin l:=spinedit1.Value;
h:=spinedit2.Value;
plos:=(l*h)*0.000001;
if (plos<=0.5)  then
res:=(plos*pay)+((plos*pay)/100)*30
else res:=plos*pay;
if StringGrid1.RowCount<b then StringGrid1.RowCount:=b+1;
StringGrid1.Cells[0,b]:='Глухой';
StringGrid1.Cells[1,b]:=floattostr(plos);
StringGrid1.Cells[2,b]:=floattostr(res);
b:=b+1;
start:=false;SpinEdit1.Value:=0;
SpinEdit2.Value:=0; end else goto 1;
end;
if n='Поворотный' then begin
Label4.Caption:='Поворотный';
pay:=strtoint(two);
if odn='1' then
pay:=pay-6;
{$I-}
AssignFile(dop,dir+'\Технические допуски\Поворотный модуль.dat');
{$I+}
If IOResult=0 then begin
Reset(dop);
while not EoF(dop) do begin
readln(dop, minv);
readln(dop, minh);
readln(dop, maxv);
readln(dop, maxh);  end; CloseFile(dop); end;
SpinEdit1.MinValue:=strtoint(minh);
SpinEdit1.MaxValue:=strtoint(maxh);
SpinEdit2.MinValue:=strtoint(minv);
SpinEdit2.MaxValue:=strtoint(maxv);
SpinEdit1.Value:=strtoint(minh);
SpinEdit2.Value:=strtoint(minv);
ShowMessage('Введите размеры и нажмите "ОК"');
2:application.ProcessMessages;
if start=true then begin l:=spinedit1.Value;
h:=spinedit2.Value;
plos:=(l*h)*0.000001;
if plos<=0.5 then
res:=(plos*pay)+((plos*pay)/100)*30
else res:=plos*pay;
if StringGrid1.RowCount<b then StringGrid1.RowCount:=b+1;
StringGrid1.Cells[0,b]:='Поворотный';
StringGrid1.Cells[1,b]:=floattostr(plos);
StringGrid1.Cells[2,b]:=floattostr(res);
b:=b+1;
start:=false;SpinEdit1.Value:=0;
SpinEdit2.Value:=0; end else goto 2;  end;
if n='Откидной' then begin
Label4.Caption:='Откидной';
pay:=strtoint(tri);
if odn='1' then
pay:=pay-6;
{$I-}
AssignFile(dop,dir+'\Технические допуски\Поворотно-откидной.dat');
{$I+}
If IOResult=0 then begin
Reset(dop);
while not EoF(dop) do begin
readln(dop, minv);
readln(dop, minh);
readln(dop, maxv);
readln(dop, maxh); end; CloseFile(dop); end;
SpinEdit1.MinValue:=strtoint(minh);
SpinEdit1.MaxValue:=strtoint(maxh);
SpinEdit2.MinValue:=strtoint(minv);
SpinEdit2.MaxValue:=strtoint(maxv);
SpinEdit1.Value:=strtoint(minh);
SpinEdit2.Value:=strtoint(minv);
ShowMessage('Введите размеры и нажмите "ОК"');
3:application.ProcessMessages;
if start=true then begin l:=spinedit1.Value;
h:=spinedit2.Value;
plos:=(l*h)*0.000001;
if plos<=0.5 then
res:=(plos*pay)+((plos*pay)/100)*30
else res:=plos*pay;
if StringGrid1.RowCount<b then StringGrid1.RowCount:=b+1;
StringGrid1.Cells[0,b]:='Откидной';
StringGrid1.Cells[1,b]:=floattostr(plos);
StringGrid1.Cells[2,b]:=floattostr(res);
b:=b+1;
start:=false;SpinEdit1.Value:=0;
SpinEdit2.Value:=0; end else goto 3;                  end;
if n='балкон1' then begin
Label4.Caption:='Балконная-поворотная дверь';
pay:=strtoint(one);
if odn='1' then
pay:=pay-6;
{$I-}
AssignFile(dop,dir+'\Технические допуски\Балконная поворотная.dat');
{$I+}
If IOResult=0 then begin
Reset(dop);
while not EoF(dop) do begin
readln(dop, minv);
readln(dop, minh);
readln(dop, maxv);
readln(dop, maxh);  end; CloseFile(dop); end;
SpinEdit1.MinValue:=strtoint(minh);
SpinEdit1.MaxValue:=strtoint(maxh);
SpinEdit2.MinValue:=strtoint(minv);
SpinEdit2.MaxValue:=strtoint(maxv);
SpinEdit1.Value:=strtoint(minh);
SpinEdit2.Value:=strtoint(minv);
ShowMessage('Введите размеры и нажмите "ОК"');
4:application.ProcessMessages;
if start=true then begin l:=spinedit1.Value;
h:=spinedit2.Value;
plos:=(l*h)*0.000001;
if plos<=0.5 then
res:=(plos*pay)+((plos*pay)/100)*30
else res:=plos*pay;
if StringGrid1.RowCount<b then StringGrid1.RowCount:=b+1;
StringGrid1.Cells[0,b]:='Балкон. поворотная';
StringGrid1.Cells[1,b]:=floattostr(plos);
StringGrid1.Cells[2,b]:=floattostr(res);
b:=b+1;
start:=false;SpinEdit1.Value:=0;
SpinEdit2.Value:=0; end else goto 4;
end;
if n='Балкон2' then begin
Label4.Caption:='Балконная-поворотно-откидная дверь';
pay:=strtoint(two);
if odn='1' then
pay:=pay-6;
{$I-}
AssignFile(dop,dir+'\Технические допуски\Поворотно-откидная.dat');
{$I+}
If IOResult=0 then begin
Reset(dop);
while not EoF(dop) do begin
readln(dop, minv);
readln(dop, minh);
readln(dop, maxv);
readln(dop, maxh);  end; CloseFile(dop); end;
SpinEdit1.MinValue:=strtoint(minh);
SpinEdit1.MaxValue:=strtoint(maxh);
SpinEdit2.MinValue:=strtoint(minv);
SpinEdit2.MaxValue:=strtoint(maxv);
SpinEdit1.Value:=strtoint(minh);
SpinEdit2.Value:=strtoint(minv);
ShowMessage('Введите размеры и нажмите "ОК"');
5:application.ProcessMessages;
if start=true then begin l:=spinedit1.Value;
h:=spinedit2.Value;
plos:=(l*h)*0.000001;
if plos<=0.5 then
res:=(plos*pay)+((plos*pay)/100)*30
else res:=plos*pay;
if StringGrid1.RowCount<b then StringGrid1.RowCount:=b+1;
StringGrid1.Cells[0,b]:='Балкон. поворот-откид';
StringGrid1.Cells[1,b]:=floattostr(plos);
StringGrid1.Cells[2,b]:=floattostr(res);
b:=b+1;
start:=false;SpinEdit1.Value:=0;
SpinEdit2.Value:=0; end else goto 5;                  end;
if n='Вход' then begin
Label4.Caption:='Входная дверь';
pay:=strtoint(tri);
if odn='1' then
pay:=pay-6;
{$I-}
AssignFile(dop,dir+'\Технические допуски\Входная дверь.dat');
{$I+}
If IOResult=0 then begin
Reset(dop);
while not EoF(dop) do begin
readln(dop, minv);
readln(dop, minh);
readln(dop, maxv);
readln(dop, maxh);  end; CloseFile(dop);  end;
SpinEdit1.MinValue:=strtoint(minh);
SpinEdit1.MaxValue:=strtoint(maxh);
SpinEdit2.MinValue:=strtoint(minv);
SpinEdit2.MaxValue:=strtoint(maxv);
SpinEdit1.Value:=strtoint(minh);
SpinEdit2.Value:=strtoint(minv);
ShowMessage('Введите размеры и нажмите "ОК"');
6:application.ProcessMessages;
if start=true then begin l:=spinedit1.Value;
h:=spinedit2.Value;
plos:=(l*h)*0.000001;
if plos<=0.5 then
res:=(plos*pay)+((plos*pay)/100)*30
else res:=plos*pay;
if StringGrid1.RowCount<b then StringGrid1.RowCount:=b+1;
StringGrid1.Cells[0,b]:='Входная дверь';
StringGrid1.Cells[1,b]:=floattostr(plos);
StringGrid1.Cells[2,b]:=floattostr(res);
b:=b+1;
start:=false;SpinEdit1.Value:=0;
SpinEdit2.Value:=0; end else goto 6;
end;n:='';end;end;dob:=b;
ShowMessage('Расчет стоимости завершен!!!');
SpeedButton3.Visible:=false;SpeedButton9.Visible:=true;
SpeedButton2.Visible:=True;SpeedButton12.Visible:=True;end;
procedure TForm8.SpeedButton3Click(Sender: TObject);
begin  start:=true;  end;
procedure TForm8.FormCreate(Sender: TObject);
begin e:=0;
start:=false;
StringGrid2.Cells[0,0]:='Площадь';StringGrid2.Cells[1,0]:='Монтаж';
StringGrid2.Cells[2,0]:='Подоконник';StringGrid2.Cells[3,0]:='Профиль SO9';
StringGrid2.Cells[4,0]:='Тонировка';StringGrid2.Cells[5,0]:='Ламин.';
StringGrid2.Cells[6,0]:='Итог';end;
procedure TForm8.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
Label14.Caption :=StringGrid1.Cells [0, ARow];
stol:=Arow;end;
procedure TForm8.SpeedButton4Click(Sender: TObject);
Var sen,sen1:real;
begin
if (label14.Caption='Поворотный')or(label14.Caption='Откидной') then
if  StringGrid1.Cells [3, stol]<>'да' then
begin
sen1:=strtofloat(StringGrid1.Cells [2, stol]);
sen:=sen1+16;
StringGrid1.Cells [2, stol]:=floattostr(sen);
StringGrid1.Cells [3, stol]:='да';
ShowMessage('Расчет закончен!');end
else Showmessage('На этом модуле уже стоит маскитка!')
else Showmessage('На данный модуль нельзя ставить маскитку!');end;
procedure TForm8.SpeedButton5Click(Sender: TObject);
begin
if Form8.StringGrid2.Cells [5,1]='' then
form15.Showmodal else
Предыдущая страница 1 2 3 4 5 6 7 Следующая страница


Расчет стоимости пластиковых оконных конструкций и дверей

Скачать курсовую работу бесплатно


Постоянный url этой страницы:
http://referatnatemu.com/?id=14933&часть=5



вверх страницы

Рейтинг@Mail.ru
Copyright © 2010-2015 referatnatemu.com