Radjah

form_rej.pas

Aug 2nd, 2012
249
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 14.86 KB | None | 0 0
  1. unit form_rej;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7.   Dialogs, StdCtrls, ExtCtrls, Grids, Buttons, MMSYSTEM;
  8.  
  9. type
  10.   TForm11 = class(TForm)
  11.     Label1: TLabel;
  12.     ComboBox1: TComboBox;
  13.     BitBtn1: TBitBtn;
  14.     RadioGroup1: TRadioGroup;
  15.     BitBtn2: TBitBtn;
  16.     BitBtn4: TBitBtn;
  17.     Panel1: TPanel;
  18.     Edit1: TEdit;
  19.     Label2: TLabel;
  20.     BitBtn3: TBitBtn;
  21.     BitBtn5: TBitBtn;
  22.     BitBtn6: TBitBtn;
  23.     BitBtn7: TBitBtn;
  24.     BitBtn8: TBitBtn;
  25.     BitBtn9: TBitBtn;
  26.     LabeledEdit1: TLabeledEdit;
  27.     LabeledEdit2: TLabeledEdit;
  28.     RadioGroup3: TRadioGroup;
  29.     Timer1: TTimer;
  30.     BitBtn10: TBitBtn;
  31.     Panel2: TPanel;
  32.     BitBtn11: TBitBtn;
  33.     BitBtn12: TBitBtn;
  34.     Edit2: TEdit;
  35.     Label3: TLabel;
  36.     RadioGroup2: TRadioGroup;
  37.     ComboBox2: TComboBox;
  38.     Label4: TLabel;
  39.     Timer2: TTimer;
  40.     Button1: TButton;
  41.     procedure FormShow(Sender: TObject);
  42.     procedure BitBtn1Click(Sender: TObject);
  43.     procedure FormKeyDown(Sender: TObject; var Key: Word;
  44.       Shift: TShiftState);
  45.     procedure BitBtn2Click(Sender: TObject);
  46.     procedure BitBtn4Click(Sender: TObject);
  47.     procedure Timer1Timer(Sender: TObject);
  48.     procedure RadioGroup3Click(Sender: TObject);
  49.     procedure FormCreate(Sender: TObject);
  50.     procedure BitBtn9Click(Sender: TObject);
  51.     procedure BitBtn3Click(Sender: TObject);
  52.     procedure BitBtn8Click(Sender: TObject);
  53.     procedure BitBtn5Click(Sender: TObject);
  54.     procedure BitBtn6Click(Sender: TObject);
  55.     procedure BitBtn7Click(Sender: TObject);
  56.     procedure RadioGroup1Click(Sender: TObject);
  57.     procedure BitBtn12Click(Sender: TObject);
  58.     procedure BitBtn11Click(Sender: TObject);
  59.     procedure RadioGroup2Click(Sender: TObject);
  60.     procedure BitBtn10Click(Sender: TObject);
  61.     procedure Button1Click(Sender: TObject);
  62.     procedure Timer2Timer(Sender: TObject);
  63.   private
  64.     { Private declarations }
  65.   public
  66.     { Public declarations }
  67.   end;
  68. Procedure pl_pos;
  69. Procedure min_pos;
  70. Procedure n_sch_vp;
  71. Procedure ud_tochki;
  72. Procedure ud_n_tochek;
  73. Procedure pl_pos2;
  74. Procedure min_pos2;
  75. Procedure min_vse;
  76. Procedure pereschet;
  77. Procedure djostik;
  78. var
  79.   Form11: TForm11;
  80. pkm_s:Array[1..4,1..10000000]of Integer;
  81.   pkm_t:Array[1..4] of Integer;
  82.   schag:Integer;//Шаг расчета
  83.   pt:Integer;   //текущая позиция расчета
  84.   pausa:Integer;//0-Пауза;1-считаем
  85.   rej_dv,rej_dv2:Integer;
  86.  
  87. implementation
  88.  uses Unit21,nastr_ras,Basa,vip_tr2,vagon_ch,Exel_vs,telo_rasch, vagon_basa2,lokomotiv,lok_tabl,lok_plus,profil_basa,vip_tr;
  89. {$R *.dfm}
  90. //Добавление позиции
  91. Procedure pl_pos;
  92. var i,j:integer;
  93. Begin
  94. i:=Form11.ComboBox1.ItemIndex+1;
  95. //Тяга
  96. IF rej_dv=1 then Begin
  97. pkm_s[i,pt]:=pkm_s[i,pt]+1;
  98. IF pkm_s[i,pt]>P_lk[i].Npkm then pkm_s[i,pt]:=P_lk[i].Npkm;
  99. Form11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  100. End;
  101. //Пневматическое торможение
  102. IF rej_dv=2 then  Begin
  103.  If pkm_s[i,pt]>-100.1 then
  104. pkm_s[i,pt]:=pkm_s[i,pt]-5;IF pkm_s[i,pt]<-100 then
  105. pkm_s[i,pt]:=-100;
  106. Form11.Edit1.Text:=IntToStr(-pkm_s[i,pt]);
  107. End;
  108. //Реостатное торможение
  109. If rej_dv=4 then Begin
  110. IF P_lk[i].N_reost>0.3 then
  111. Begin  If pkm_s[i,pt]>-100 then pkm_s[i,pt]:=-100;
  112. If pkm_s[i,pt]>-100-P_lk[i].N_reost+0.1 then pkm_s[i,pt]:=pkm_s[i,pt]-1;
  113. End else pkm_s[i,pt]:=0;
  114. Form11.Edit1.Text:=IntToStr(-pkm_s[i,pt]-100);
  115. ENd;
  116. //Рекуперативное торможение
  117. If rej_dv=3 then Begin
  118. IF P_lk[i].N_rek>0.4 then
  119. Begin  If pkm_s[i,pt]>-200 then pkm_s[i,pt]:=-200;
  120. IF pkm_s[i,pt]>-200-P_lk[i].N_rek+0.1 then pkm_s[i,pt]:=pkm_s[i,pt]-1;
  121. End else pkm_s[i,pt]:=0;
  122. Form11.Edit1.Text:=IntToStr(-pkm_s[i,pt]-200);
  123. End;
  124.  
  125.  
  126. End;
  127. //Плюс позиция со второго пульта
  128. Procedure pl_pos2;
  129. var i,j:Integer;
  130. Begin
  131. i:=Form11.ComboBox2.ItemIndex+1;
  132. //Тяга
  133. IF rej_dv2=1 then Begin
  134. pkm_s[i,pt]:=pkm_s[i,pt]+1;
  135. IF pkm_s[i,pt]>P_lk[i].Npkm then pkm_s[i,pt]:=P_lk[i].Npkm;
  136. Form11.Edit2.Text:=IntToStr(pkm_s[i,pt]);
  137. End;
  138. //Пневматическое торможение
  139. IF rej_dv2=2 then  Begin
  140.  If pkm_s[i,pt]>-100.1 then
  141. pkm_s[i,pt]:=pkm_s[i,pt]-5;IF pkm_s[i,pt]<-100 then
  142. pkm_s[i,pt]:=-100;
  143. Form11.Edit2.Text:=IntToStr(-pkm_s[i,pt]);
  144. End;
  145.  
  146. //Реостатное торможение
  147. If rej_dv2=4 then Begin
  148. IF P_lk[i].N_reost>0.3 then
  149. Begin  If pkm_s[i,pt]>-100 then pkm_s[i,pt]:=-100;
  150. If pkm_s[i,pt]>-100-P_lk[i].N_reost+0.1 then pkm_s[i,pt]:=pkm_s[i,pt]-1;
  151. End else pkm_s[i,pt]:=0;
  152. Form11.Edit2.Text:=IntToStr(-pkm_s[i,pt]-100);
  153. ENd;
  154. //Рекуперативное торможение
  155. If rej_dv2=3 then Begin
  156. IF P_lk[i].N_rek>0.4 then
  157. Begin  If pkm_s[i,pt]>-200 then pkm_s[i,pt]:=-200;
  158. IF pkm_s[i,pt]>-200-P_lk[i].N_rek+0.1 then pkm_s[i,pt]:=pkm_s[i,pt]-1;
  159. End else pkm_s[i,pt]:=0;
  160. Form11.Edit2.Text:=IntToStr(-pkm_s[i,pt]-200);
  161. End;
  162.  
  163. End;
  164. //Уменьшение позиции со второго пульта
  165. Procedure min_pos2;
  166. var i,j:integer;
  167. Begin
  168. i:=Form11.ComboBox2.ItemIndex+1;
  169. //Тяга
  170. IF rej_dv2=1 then Begin
  171. pkm_s[i,pt]:=pkm_s[i,pt]-1;  IF pkm_s[i,pt]<0 then pkm_s[i,pt]:=0;
  172. Form11.Edit2.Text:=IntToStr(pkm_s[i,pt]);
  173. End;
  174. //Пневматическое торможение
  175. IF rej_dv2=2 then Begin
  176. If pkm_s[i,pt]<0.1 then
  177. pkm_s[i,pt]:=pkm_s[i,pt]+5;IF pkm_s[i,pt]>0 then
  178. pkm_s[i,pt]:=0;
  179. Form11.Edit2.Text:=IntToStr(-pkm_s[i,pt]);     End;
  180.  //Реостатное торможение
  181. If rej_dv2=4 then Begin
  182. IF P_lk[i].N_reost>0.3 then
  183. Begin  If pkm_s[i,pt]>-100 then pkm_s[i,pt]:=-100;
  184. If pkm_s[i,pt]<-100.1 then pkm_s[i,pt]:=pkm_s[i,pt]+1;
  185. End else pkm_s[i,pt]:=0;
  186. Form11.Edit2.Text:=IntToStr(-pkm_s[i,pt]-100);
  187. ENd;
  188. //Рекуперативное торможение
  189. If rej_dv2=3 then Begin
  190. IF P_lk[i].N_rek>0.4 then
  191. Begin  If pkm_s[i,pt]>-200 then pkm_s[i,pt]:=-200;
  192. IF pkm_s[i,pt]<-200.1 then pkm_s[i,pt]:=pkm_s[i,pt]+1;
  193. End else pkm_s[i,pt]:=0;
  194. Form11.Edit2.Text:=IntToStr(-pkm_s[i,pt]-200);
  195. End;
  196. End;
  197. //Уменьшение позиции
  198. Procedure min_pos;
  199. var i,j:integer;
  200. Begin
  201. i:=Form11.ComboBox1.ItemIndex+1;
  202. //Тяга
  203. IF rej_dv=1 then Begin
  204. pkm_s[i,pt]:=pkm_s[i,pt]-1;  IF pkm_s[i,pt]<0 then pkm_s[i,pt]:=0;
  205. Form11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  206. End;
  207. //Пневматическое торможение
  208. IF rej_dv=2 then Begin
  209. If pkm_s[i,pt]<0.1 then
  210. pkm_s[i,pt]:=pkm_s[i,pt]+5;IF pkm_s[i,pt]>0 then
  211. pkm_s[i,pt]:=0;
  212. Form11.Edit1.Text:=IntToStr(-pkm_s[i,pt]);
  213. End;
  214. //Реостатное торможение
  215. If rej_dv=4 then Begin
  216. IF P_lk[i].N_reost>0.3 then
  217. Begin  If pkm_s[i,pt]>-100 then pkm_s[i,pt]:=-100;
  218. If pkm_s[i,pt]<-100.1 then pkm_s[i,pt]:=pkm_s[i,pt]+1;
  219. End else pkm_s[i,pt]:=0;
  220. Form11.Edit1.Text:=IntToStr(-pkm_s[i,pt]-100);
  221. ENd;
  222. //Рекуперативное торможение
  223. If rej_dv=3 then Begin
  224. IF P_lk[i].N_rek>0.4 then
  225. Begin  If pkm_s[i,pt]>-200 then pkm_s[i,pt]:=-200;
  226. IF pkm_s[i,pt]<-200.1 then pkm_s[i,pt]:=pkm_s[i,pt]+1;
  227. End else pkm_s[i,pt]:=0;
  228. Form11.Edit1.Text:=IntToStr(-pkm_s[i,pt]-200);
  229. End;
  230.  
  231. End;
  232.  
  233. //Удаление точки из расчета
  234. Procedure ud_tochki;
  235. var i:Integer;
  236. Begin
  237. If pt>1.5 then Begin
  238. //Перечисляем всё, что нужно обнулить
  239. For i:=1 to N_lok do  Begin
  240. pkm_s[i,pt]:=0;
  241. Fk_sap[i,pt]:=0;
  242. fk_ud[i,pt]:=0;
  243. end;
  244. BTd[pt]:=0;
  245. v_sap[pt]:=0;
  246. v_n:=v_sap[pt-1];
  247. t_sap[pt]:=t_sap[pt-1];
  248. ww_r[pt]:=0; pt:=pt-1;  pror_mgn;  pereschet;
  249. i:=Form11.ComboBox1.ItemIndex+1;
  250. Form11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  251. IF N_lok>1.5 then Begin
  252. i:=Form11.ComboBox2.ItemIndex+1;
  253. Form11.Edit2.Text:=IntToStr(pkm_s[i,pt]);
  254. End;  End;
  255. End;
  256. //Удаление нескольких точек
  257. Procedure ud_n_tochek;
  258. var pos_f,i,j:Integer;
  259. Begin
  260. pos_f:=Round(pos_pols/10);
  261. For i:=pos_f+1 to pt do
  262. Begin
  263. For j:=1 to N_lok do
  264. Begin
  265. pkm_s[j,i]:=0;
  266. Fk_sap[j,i]:=0;
  267. fk_ud[j,i]:=0;
  268. End;
  269. Btd[i]:=0;v_sap[i]:=0;ww_r[i]:=0;
  270. End;
  271. v_n:=v_sap[pos_f-1];pt:=pos_f;
  272. i:=Form11.ComboBox1.ItemIndex+1;
  273. Form11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  274. IF N_lok>1.5 then Begin
  275. i:=Form11.ComboBox2.ItemIndex+1;
  276. Form11.Edit2.Text:=IntToStr(pkm_s[i,pt]);
  277. End;
  278. mn:=Round(pos_f/2);
  279. pereschet;
  280. pror_mgn;
  281. End;
  282.  
  283. Procedure min_vse;
  284. var pos_f,i,j:Integer;
  285. Begin
  286. pos_f:=1;//Round(pos_pols/10);
  287. For i:=pos_f+1 to pt do
  288. Begin
  289. For j:=1 to N_lok do
  290. Begin
  291. pkm_s[j,i]:=0;
  292. Fk_sap[j,i]:=0;
  293. fk_ud[j,i]:=0;
  294. End;
  295. Btd[i]:=0;v_sap[i]:=0;ww_r[i]:=0;
  296. End;
  297. v_n:=v_nach;//v_sap[pos_f-1];
  298.  
  299. pt:=pos_f;
  300. i:=Form11.ComboBox1.ItemIndex+1;
  301. Form11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  302. mn:=1;pereschet;
  303. pror_mgn;
  304.  
  305. End;
  306.  
  307. //Пересчет счетчика смены позиций и распр. времени работы по позициям
  308. Procedure pereschet;
  309.  var i,j,k,l,pl:Integer;
  310.  Begin
  311. //Обнуление
  312. For i:=1 to 4 do
  313. For j:=0 to 70 do
  314. For k:=0 to 70 do
  315. Kol_sm_pkm[i,j,k]:=0;
  316. For i:=1 to 4 do
  317. FOr j:=1 to 70 do t_rab_pos[i,j]:=0;
  318. //Запись по новому
  319. For l:=1 to pt do
  320.  IF l>2.5 then Begin
  321.  For i:=1 to N_lok do
  322.  Begin j:=pkm_s[i,l];k:=pkm_s[i,l-1];
  323.  If j<0 then j:=0; If k<0 then k:=0;
  324.  IF j<>k then Kol_sm_pkm[i,j,k]:=Kol_sm_pkm[i,j,k]+1;
  325.  End;
  326.  End;
  327. For l:=2 to pt do
  328.  For i:=1 to N_lok do
  329. Begin pl:=pkm_s[i,l-1]; If pl<0 then pl:=0;
  330. t_rab_pos[i,pl]:=t_rab_pos[i,pl]+t_sap[l]-t_sap[l-1];
  331. end;
  332.  End;
  333. procedure TForm11.FormShow(Sender: TObject);
  334. Var i:integer;
  335. begin
  336. For i:=1 to 10 do
  337. pkm_s[i,1]:=0;
  338. end;
  339.  
  340.  
  341. procedure TForm11.BitBtn1Click(Sender: TObject);
  342. begin
  343. Form11.Visible:=False;
  344. end;
  345.  
  346. procedure TForm11.FormKeyDown(Sender: TObject; var Key: Word;
  347.   Shift: TShiftState);
  348. begin
  349. //Управление клавишами
  350. If Key=VK_UP then pl_pos;
  351. IF Key=VK_DOWN then min_pos;
  352. end;
  353.  
  354.  
  355.  
  356. //Расчет нескольких шагов вперед до указателя
  357. Procedure n_sch_vp;
  358. var pos_f,i:Integer;
  359. Begin pausa:=0;
  360. pos_f:=Round(pos_pols/10)-pt;
  361. For i:=1 to pos_f do BEgin
  362. pt:=pt+1;rasch_schag;
  363. ENd;
  364. pror_mgn;
  365. End;
  366.  
  367. procedure TForm11.BitBtn2Click(Sender: TObject);
  368. begin
  369. pl_pos;
  370. end;
  371.  
  372. procedure TForm11.BitBtn4Click(Sender: TObject);
  373. begin
  374. min_pos;
  375. end;
  376.  
  377. procedure TForm11.Timer1Timer(Sender: TObject);
  378. begin
  379. If pausa=1 then Begin
  380.  pt:=pt+1;
  381. rasch_schag;pror_mgn; End;
  382. end;
  383.  
  384. procedure TForm11.RadioGroup3Click(Sender: TObject);
  385. begin
  386. IF Form11.RadioGroup3.ItemIndex=0 then Form11.Timer1.Interval:=10;
  387. IF Form11.RadioGroup3.ItemIndex=1 then Form11.Timer1.Interval:=50;
  388. IF Form11.RadioGroup3.ItemIndex=2 then Form11.Timer1.Interval:=100;
  389. IF FOrm11.RadioGroup3.ItemIndex=3 then Form11.Timer1.Interval:=500;
  390. IF Form11.RadioGroup3.ItemIndex=4 then Form11.Timer1.Interval:=1000;
  391. If Form11.RadioGroup3.ItemIndex=5 then Form11.Timer1.Interval:=2000;
  392. If Form11.RadioGroup3.ItemIndex=6 then Form11.Timer1.Interval:=5000;
  393. end;
  394.  
  395. procedure TForm11.FormCreate(Sender: TObject);
  396. begin
  397. pt:=1; pausa:=0;schag:=1; rej_dv:=1; rej_dv2:=1;
  398. end;
  399.  
  400. procedure TForm11.BitBtn9Click(Sender: TObject);
  401. begin  pausa:=0;
  402.  
  403. pt:=pt+1;rasch_schag;pror_mgn;
  404. end;
  405.  
  406. procedure TForm11.BitBtn3Click(Sender: TObject);
  407. begin
  408. pausa:=1;
  409. end;
  410.  
  411. procedure TForm11.BitBtn8Click(Sender: TObject);
  412. begin
  413. n_sch_vp;
  414. end;
  415.  
  416. procedure TForm11.BitBtn5Click(Sender: TObject);
  417. begin
  418. pausa:=0;
  419. end;
  420.  
  421. procedure TForm11.BitBtn6Click(Sender: TObject);
  422. begin
  423. pausa:=0; ud_tochki;
  424. end;
  425.  
  426. procedure TForm11.BitBtn7Click(Sender: TObject);
  427. begin
  428. pausa:=0; ud_n_tochek;
  429. end;
  430.  
  431. procedure TForm11.RadioGroup1Click(Sender: TObject);
  432. var i:Integer;
  433. begin
  434. rej_dv:=Form11.RadioGroup1.ItemIndex+1;
  435. i:=Form11.ComboBox1.ItemIndex+1;
  436. pkm_s[i,pt]:=0;
  437. FOrm11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  438. end;
  439.  
  440. procedure TForm11.BitBtn12Click(Sender: TObject);
  441. begin
  442. pl_pos2;
  443. end;
  444.  
  445. procedure TForm11.BitBtn11Click(Sender: TObject);
  446. begin
  447. min_pos2;
  448. end;
  449.  
  450. procedure TForm11.RadioGroup2Click(Sender: TObject);
  451. var i:Integer;
  452. begin
  453. rej_dv2:=Form11.RadioGroup2.ItemIndex+1;
  454. i:=Form11.ComboBox2.ItemIndex+1;
  455. pkm_s[i,pt]:=0;
  456. FOrm11.Edit2.Text:=IntToStr(pkm_s[i,pt]);
  457.  
  458. end;
  459.  
  460. procedure TForm11.BitBtn10Click(Sender: TObject);
  461. begin
  462. min_vse;
  463. end;
  464. //Работа Джостика
  465. Procedure djostik;
  466. var myjoy: tjoyinfo;x,y,i,z1,z2,z3:Integer;  ErrorResult: MMRESULT;
  467. Begin  ErrorResult := joyGetPos(joystickid1, @MyJoy);
  468.   if ErrorResult = JOYERR_NOERROR then Begin
  469. joygetpos(joystickid1,@myjoy);
  470. x:=myjoy.wxpos;
  471. y:= myjoy.wypos;
  472. //Изменение позиции рукоятка вперед-назад
  473. IF y<30000 then pl_pos;
  474. IF y>36000 then min_pos;
  475. //Шаг вперед-назад рукоятка вправо-влево
  476. IF x<30000 then Begin pausa:=0; ud_tochki;end;
  477. IF x>36000 then Begin pausa:=0;
  478. pt:=pt+1;rasch_schag;pror_mgn;end;
  479. //ПУСК кнопка 1
  480. IF  (myjoy.wbuttons and joy_button1)>0 then
  481. pausa:=1;
  482. //ПАУЗА   кнопка 2
  483. IF  (myjoy.wbuttons and joy_button2)>0 then
  484. pausa:=0;
  485. //Изменение режима ведения поезда кнопка 3
  486. IF  (myjoy.wbuttons and joy_button3)>0 then
  487. Begin
  488.  z1:=Form11.RadioGroup1.ItemIndex+1;
  489.  If z1>3.5 then z1:=0;
  490.  Form11.RadioGroup1.ItemIndex:=z1;
  491.  rej_dv:=Form11.RadioGroup1.ItemIndex+1;
  492. i:=Form11.ComboBox1.ItemIndex+1;
  493. pkm_s[i,pt]:=0;
  494. FOrm11.Edit1.Text:=IntToStr(pkm_s[i,pt]);
  495. End;
  496. //Изменение скорости расчета кнопка 4
  497. IF  (myjoy.wbuttons and joy_button4)>0 then
  498. Begin
  499. z2:=FOrm11.RadioGroup3.ItemIndex+1;
  500. If z2>6.5 then z2:=0;
  501. Form11.RadioGroup3.ItemIndex:=z2;
  502. IF Form11.RadioGroup3.ItemIndex=0 then Form11.Timer1.Interval:=10;
  503. IF Form11.RadioGroup3.ItemIndex=1 then Form11.Timer1.Interval:=50;
  504. IF Form11.RadioGroup3.ItemIndex=2 then Form11.Timer1.Interval:=100;
  505. IF FOrm11.RadioGroup3.ItemIndex=3 then Form11.Timer1.Interval:=500;
  506. IF Form11.RadioGroup3.ItemIndex=4 then Form11.Timer1.Interval:=1000;
  507. If Form11.RadioGroup3.ItemIndex=5 then Form11.Timer1.Interval:=2000;
  508. If Form11.RadioGroup3.ItemIndex=6 then Form11.Timer1.Interval:=5000;
  509. End;
  510. //ОТПУСК ТОРМОЗА - кнопка 5
  511. IF  (myjoy.wbuttons and joy_button5)>0 then
  512. Begin
  513. sost_otpuska:=0;t_otp:=0;
  514. End;
  515. //Плюс ПКМ толкача кнопка 6
  516. IF  (myjoy.wbuttons and joy_button6)>0 then
  517. Begin IF Form11.Panel2.Visible=true
  518. then  pl_pos2;
  519. End;
  520. //Изменение режима ведения толкача - кнопка 7
  521. IF  (myjoy.wbuttons and joy_button7)>0 then
  522. Begin IF Form11.Panel2.Visible=true
  523. then  Begin
  524. z3:=Form11.RadioGroup2.ItemIndex+1;
  525. If z3>3.5 then z3:=0;
  526. Form11.RadioGroup2.ItemIndex:=z3;
  527. rej_dv2:=Form11.RadioGroup2.ItemIndex+1;
  528. i:=Form11.ComboBox2.ItemIndex+1;
  529. pkm_s[i,pt]:=0;
  530. FOrm11.Edit2.Text:=IntToStr(pkm_s[i,pt]);
  531. End;
  532. End;
  533. //Минус позиция контроллера толкача
  534. IF  (myjoy.wbuttons and joy_button8)>0 then
  535. Begin IF Form11.Panel2.Visible=true
  536. then min_pos2;
  537. End;
  538.  
  539. End;
  540. End;
  541.  
  542. procedure TForm11.Button1Click(Sender: TObject);
  543. begin
  544.  sost_otpuska:=0;t_otp:=0;
  545. end;
  546.  
  547. procedure TForm11.Timer2Timer(Sender: TObject);
  548. begin
  549. IF Form11.Visible=true then djostik;
  550. end;
  551.  
  552. end.
Advertisement
Add Comment
Please, Sign In to add comment