Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 6 274

/ вопрос открыт /

Здравствуйте, уважаемые эксперты! Я скачал исходник утилиты, я все мучаюсь закрыть пару кнопок, то есть чтоб в выбранной вкладке кнопка была закрыта или скрыта..... вобщем в утилите есть 5 вкладок
"Пути поиска"
"Фильтры"
"Исключение"
"Сканирование"
"О программе"
( В каждой вкладке есть кнопки такие как-
"Добавить"
"Редактировать"
"Удалить"
"Удалить все"
"Исключить все"
"Выбрать Все")

Помогите пожайлуста изменить код, чтоб во вкладках были закрыты кнопки такие как.
"Добавить"
"Удалить"
"Удалить Все"
Я прикреплю скрин чтоб показать где мне надо закрыть кнопки...
Заранее Огромное Спасибо....

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

Приложение:
  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7. Dialogs, XPMan, ComCtrls, StdCtrls, ExtCtrls, Buttons,Math,ShellApi, Menus,
  8. TabNotBk, CheckLst,IniFiles,FileCtrl;
  9.  
  10. type
  11. TForm1 = class(TForm)
  12. XPManifest1: TXPManifest;
  13. StatusBar1: TStatusBar;
  14. PopupMenu1: TPopupMenu;
  15. N7: TMenuItem;
  16. N3: TMenuItem;
  17. TabbedNotebook1: TTabbedNotebook;
  18. ListView1: TListView;
  19. CheckListBox1: TCheckListBox;
  20. Label1: TLabel;
  21. ListView2: TListView;
  22. Label2: TLabel;
  23. ListView3: TListView;
  24. N8: TMenuItem;
  25. N10: TMenuItem;
  26. Label3: TLabel;
  27. Label4: TLabel;
  28. Label5: TLabel;
  29. Label6: TLabel;
  30. Image2: TImage;
  31. Bevel1: TBevel;
  32. N1: TMenuItem;
  33. N4: TMenuItem;
  34. N5: TMenuItem;
  35. Label7: TLabel;
  36. SpeedButton1: TSpeedButton;
  37. SpeedButton2: TSpeedButton;
  38. ProgressBar1: TProgressBar;
  39. Panel1: TPanel;
  40. SpeedButton4: TSpeedButton;
  41. SpeedButton3: TSpeedButton;
  42. SpeedButton6: TSpeedButton;
  43. SpeedButton5: TSpeedButton;
  44. SpeedButton8: TSpeedButton;
  45. SpeedButton7: TSpeedButton;
  46. Image1: TImage;
  47. procedure N1Click(Sender: TObject);
  48. procedure N2Click(Sender: TObject);
  49. procedure N5Click(Sender: TObject);
  50. procedure N6Click(Sender: TObject);
  51. procedure Find(Dir:string);
  52. procedure FindFiles;
  53. procedure DeleteFileSelected;
  54. function ExlPath(Path:string):boolean;
  55. function InExt(FileName:string):boolean;
  56. procedure GetDrives;
  57. procedure ShowText(f,s:real);
  58. procedure DeleteAll;
  59. procedure CheckAll(Checked:boolean);
  60. function FileMaskEquate(F, M: string): boolean;
  61. procedure EnabledButtons(Enabled:boolean);
  62. procedure FormResize(Sender: TObject);
  63. procedure SpeedButton4MouseDown(Sender: TObject; Button: TMouseButton;
  64. Shift: TShiftState; X, Y: Integer);
  65. procedure SpeedButton4MouseUp(Sender: TObject; Button: TMouseButton;
  66. Shift: TShiftState; X, Y: Integer);
  67. procedure Image2Click(Sender: TObject);
  68. procedure Image3Click(Sender: TObject);
  69. procedure Image4Click(Sender: TObject);
  70. procedure Image5Click(Sender: TObject);
  71. procedure Image6Click(Sender: TObject);
  72. procedure Image7Click(Sender: TObject);
  73. procedure FormCreate(Sender: TObject);
  74. procedure N3Click(Sender: TObject);
  75.  
  76. procedure AddExl(Path,Description:string; EChecked:boolean; List:TListview);
  77. procedure AddExt(Extension,Description:string; EChecked:boolean; List:TListview);
  78. procedure LoadNastr;
  79. procedure SaveNastr;
  80. procedure SpeedButton8Click(Sender: TObject);
  81. procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  82. procedure SpeedButton1Click(Sender: TObject);
  83. procedure SpeedButton2Click(Sender: TObject);
  84. procedure SpeedButton3Click(Sender: TObject);
  85. procedure SpeedButton4Click(Sender: TObject);
  86. procedure SpeedButton5Click(Sender: TObject);
  87. procedure SpeedButton6Click(Sender: TObject);
  88. procedure N8Click(Sender: TObject);
  89. procedure N10Click(Sender: TObject);
  90. procedure SpeedButton7Click(Sender: TObject);
  91. procedure N4Click(Sender: TObject);
  92. procedure TabbedNotebook1Change(Sender: TObject; NewTab: Integer; var AllowChange: Boolean);
  93. function GetQuanFolders(Path:string):integer;
  94. procedure FindFolders(Dir:String; var Folders:integer);
  95. private
  96. { Private declarations }
  97. public
  98. { Public declarations }
  99. end;
  100.  
  101. var
  102. Form1: TForm1;
  103. LastIndex:integer;
  104. files,size:extended;
  105. Exts:array of string;
  106. Stop:boolean;
  107. implementation
  108.  
  109. uses Unit2;
  110.  
  111.  
  112. {$R *.dfm}
  113. //{$R Data.RES}
  114. //--------------------------------------------------
  115. function TForm1.ExlPath(Path:string):boolean;
  116. var
  117. i:integer;
  118. begin
  119. for i:=0 to Listview3.Items.Count-1 do begin
  120. if (Listview3.Items[i].Checked=true) and (Pos(Listview3.Items[i].Caption,Path)>0) then begin
  121. Result:=true;
  122. exit;
  123. end;
  124. end;
  125. Result:=false;
  126. end;
  127.  
  128. procedure TForm1.DeleteFileSelected;
  129. begin
  130. if (Form1.ListView1.Selected<>nil) and (Form1.ListView1.Selected.Caption<>'') then begin
  131. DeleteFile(Form1.ListView1.Selected.Caption);
  132. Form1.ListView1.Selected.Delete;
  133. end;
  134. end;
  135.  
  136. function TForm1.InExt(FileName:string):boolean;
  137. var
  138. i:integer;
  139. begin
  140. For i:=0 to Listview2.Items.Count-1 do begin
  141. if ListView2.Items[i].Checked=true then begin
  142. if FileMaskEquate(FileName,Listview2.Items[i].Caption)=true then begin
  143. Result:=true;
  144. exit;
  145. end;
  146. end;
  147. end;
  148. Result:=false;
  149. end;
  150.  
  151. function TForm1.FileMaskEquate(F, M: string): boolean;
  152. var
  153. Fl, Ml: byte; // length of file name and mask
  154. Fp, Mp: byte; // pointers
  155. begin
  156. F := UpperCase(F);
  157. M := UpperCase(M);
  158. result := true;
  159. Fl := length(F);
  160. Ml := length(M);
  161. Fp := 1;
  162. Mp := 1;
  163. while Mp <= Ml do
  164. begin // wildcard
  165. case M[Mp] of //
  166. '?':
  167. begin // if one any char
  168. inc(Mp); // next char of mask
  169. inc(Fp); // next char of file name
  170. end; //
  171. '*':
  172. begin // if any chars
  173. if Mp = Ml then
  174. exit; // if last char in mask then exit
  175. if M[Mp + 1] = F[Fp] then
  176. begin // if next char in mask equate char in
  177. Inc(Mp); // file name then next char in mask and
  178. end
  179. else
  180. begin // else
  181. if Fp = Fl then
  182. begin // if last char in file name then
  183. result := false; // function return false
  184. exit; //
  185. end; // else, if not previous, then
  186. inc(Fp); // next char in file name
  187. end; //
  188. end; //
  189. else
  190. begin // other char in mask
  191. if M[Mp] <> F[Fp] then
  192. begin // if char in mask not equate char in
  193. result := false; // file name then function return
  194. exit; // false
  195. end; // else
  196. if (Mp=Ml) and (Fp<>Fl) then begin
  197. Result:=false;
  198. exit;
  199. end;
  200. inc(Fp); // next char of mask
  201. inc(Mp); // next char of file name
  202. end //
  203. end;
  204. end;
  205. end;
  206.  
  207.  
  208.  
  209.  
  210. procedure TForm1.GetDrives;
  211. var
  212. Drive:char;
  213. DT:Cardinal;
  214. begin
  215. CheckListBox1.Clear;
  216. for Drive:='A' to 'Z' do begin
  217. DT:=GetDriveType(PAnsiChar(Drive+':\'));
  218. if (DT=DRIVE_FIXED) or (DT=DRIVE_REMOVABLE) then begin
  219. CheckListBox1.Items.Add(Drive+':\');
  220. CheckListBox1.Checked[CheckListBox1.Count-1]:=true;
  221. end;
  222. end;
  223. LastIndex:=CheckListbox1.Count-1;
  224. end;
  225.  
  226. procedure TForm1.ShowText(f,s:real);
  227. begin
  228.  
  229.  
  230. end;
  231.  
  232.  
  233. procedure TForm1.Find(Dir:String);
  234. Var
  235. DirInfo:TSearchRec;
  236. FindRes:Integer;
  237. ListItem: TListItem;
  238. ShInfo: TSHFileInfo;
  239. begin
  240. FindRes:=FindFirst(Dir+'*.*',faAnyFile,DirInfo);
  241. While FindRes=0 do begin
  242. if Stop=true then FindClose(DirInfo);
  243. application.ProcessMessages;
  244. if ((DirInfo.Attr and faDirectory)=faDirectory) and ((DirInfo.Name='.')or(DirInfo.Name='..')) then begin
  245. FindRes:=FindNext(DirInfo);
  246. Continue;
  247. end;
  248.  
  249. if ((DirInfo.Attr and faDirectory)=faDirectory) then begin
  250. Find(Dir+DirInfo.Name+'\');
  251.  
  252. Progressbar1.Position:=Progressbar1.Position+1;
  253. FindRes:=FindNext(DirInfo);
  254. Continue;
  255. end;
  256.  
  257. if (ExlPath(Dir+DirInfo.Name)=false) and (InExt(DirInfo.Name)=true) then begin
  258. ListItem:=Listview1.Items.Add;
  259. SHGetFileInfo(PChar(Dir+DirInfo.Name), 0, ShInfo, SizeOf(ShInfo),SHGFI_TYPENAME or SHGFI_SYSICONINDEX);
  260. with Listitem do begin
  261. ImageIndex:=ShInfo.iIcon;
  262. Caption :=dir+dirinfo.Name;
  263.  
  264. SubItems.Add((ShInfo.szTypeName));
  265. SubItems.Add(DateTimeToStr(FileDateToDateTime(DirInfo.Time)));
  266. Checked:=true;
  267. end;
  268. files:=files+1;
  269. size:=size+Dirinfo.size;
  270. ShowText(files,size);
  271. end;
  272. FindRes:=FindNext(DirInfo);
  273. end;
  274. FindClose(DirInfo);
  275. Form1.Statusbar1.Panels[0].Text:='';
  276. end;
  277.  
  278.  
  279. procedure TForm1.FindFiles;
  280. var
  281. i:integer;
  282. begin
  283. files:=0; size:=0; stop:=false;
  284. ShowText(0,0);
  285. Form1.ListView1.Clear;
  286. for i:=0 to CheckListBox1.Count-1 do begin
  287. if CheckListBox1.Checked[i]=true then begin
  288. Progressbar1.Max:=GetQuanFolders(CheckListBox1.items[i]);
  289. Find(CheckListBox1.items[i]);
  290. Progressbar1.Position:=0;
  291. end;
  292. Application.ProcessMessages;
  293. end;
  294. end;
  295.  
  296. procedure TForm1.EnabledButtons(Enabled:boolean);
  297. var
  298. i:integer;
  299. begin
  300. if Enabled=false then Form1.ListView1.PopupMenu:=nil else Form1.ListView1.PopupMenu:=Form1.PopupMenu1;
  301. for i:=3 to 8 do TSpeedButton(FindComponent('SpeedButton'+inttostr(i))).Enabled:=Enabled;
  302. ListView2.Enabled:=Enabled;
  303. ListView3.Enabled:=Enabled;
  304. CheckListBox1.Enabled:=Enabled;
  305. end;
  306.  
  307. procedure TForm1.DeleteAll;
  308. begin
  309. while Form1.ListView1.Items.Count>0 do begin
  310. if Form1.ListView1.Items[0].Checked=true then begin
  311.  
  312.  
  313.  
  314. Form1.ListView1.Items[0].Delete;
  315. application.ProcessMessages;
  316. end;
  317. StatusBar1.Panels[0].Text:='';
  318. ShowText(0,0);
  319. end;
  320.  
  321. procedure TForm1.CheckAll(Checked:boolean);
  322. var
  323. i,c:integer;
  324. begin
  325. case TabbedNotebook1.PageIndex of
  326. 0: c:=Checklistbox1.Count-1;
  327. 1: c:=ListView2.Items.Count-1;
  328. 2: c:=ListView3.Items.Count-1;
  329. 3: c:=ListView1.Items.Count-1;
  330. end;
  331. for i:=0 to c do begin
  332. case TabbedNotebook1.PageIndex of
  333. 0: Checklistbox1.Checked[i]:=Checked;
  334. 1: ListView2.Items[i].Checked:=Checked;
  335. 2: ListView3.Items[i].Checked:=Checked;
  336. 3: ListView1.Items[i].Checked:=Checked;
  337. end;
  338. end;
  339. end;
  340.  
  341. procedure TForm1.N1Click(Sender: TObject);
  342. var
  343. folder,str:string;
  344. i:integer;
  345. flag:boolean;
  346. begin
  347. if Listview1.Selected<>nil then begin
  348. folder:=ExtractFilePath(Listview1.Selected.Caption);
  349.  
  350. AddExl(folder,Str,true,listview3);
  351. repeat
  352. flag:=false;
  353. for i:=0 to ListView1.Items.Count-1 do begin
  354. if folder=ExtractFilePath(Listview1.Items[i].Caption) then begin
  355. Listview1.Items[i].Delete;
  356. flag:=true;
  357. break;
  358. end;
  359. end;
  360. until flag=false;
  361. end;
  362. end;
  363.  
  364. procedure TForm1.N2Click(Sender: TObject);
  365. begin
  366. DeleteAll;
  367. end;
  368.  
  369. procedure TForm1.N5Click(Sender: TObject);
  370. begin
  371. CheckAll(true);
  372. end;
  373.  
  374. procedure TForm1.N6Click(Sender: TObject);
  375. begin
  376. CheckAll(false);
  377. end;
  378.  
  379.  
  380.  
  381. procedure TForm1.FormResize(Sender: TObject);
  382. begin
  383. with Listview1 do begin
  384. Column[0].Width:=(Listview1.Width*50 div 100);
  385. Column[1].Width:=(Listview1.Width*18 div 100);
  386. Column[2].Width:=(Listview1.Width*18 div 100);
  387. Column[3].Width:=(Listview1.Width*25 div 100);
  388. end;
  389. StatusBar1.Panels[0].Width:=(StatusBar1.Width*54 div 100);
  390. StatusBar1.Panels[1].Width:=(StatusBar1.Width*25 div 100);
  391. end;
  392.  
  393. procedure TForm1.SpeedButton4MouseDown(Sender: TObject; Button: TMouseButton;
  394. Shift: TShiftState; X, Y: Integer);
  395. var
  396. Name:string;
  397. begin
  398. if Shift=[ssLeft] then begin
  399. Name:='B'+inttostr((Sender as TImage).Tag)+'2';
  400. (Sender as TImage).Picture.Bitmap.LoadFromResourceName(Hinstance,Name);
  401. end;
  402. end;
  403.  
  404. procedure TForm1.SpeedButton4MouseUp(Sender: TObject; Button: TMouseButton;
  405. Shift: TShiftState; X, Y: Integer);
  406. begin
  407. Name:='B'+inttostr((Sender as TImage).Tag)+'1';
  408. (Sender as TImage).Picture.Bitmap.LoadFromResourceName(Hinstance,Name);
  409. end;
  410.  
  411. procedure TForm1.Image2Click(Sender: TObject);
  412. begin
  413. //--
  414. end;
  415.  
  416. procedure TForm1.Image3Click(Sender: TObject);
  417. begin
  418. CheckAll(false);
  419. end;
  420.  
  421. procedure TForm1.Image4Click(Sender: TObject);
  422. begin
  423. CheckAll(true);
  424. end;
  425.  
  426. procedure TForm1.Image5Click(Sender: TObject);
  427. begin
  428. DeleteFileSelected;
  429. end;
  430.  
  431. procedure TForm1.Image6Click(Sender: TObject);
  432. begin
  433. DeleteAll;
  434. end;
  435.  
  436. procedure TForm1.Image7Click(Sender: TObject);
  437. begin
  438. Stop:=true;
  439. SpeedButton6.Visible:=true;
  440. end;
  441.  
  442. procedure TForm1.FormCreate(Sender: TObject);
  443. var
  444. SysImageList: uint;
  445. SFI: TSHFileInfo;
  446. begin
  447. GetDrives;
  448. LoadNastr;
  449. ListView1.LargeImages:=TImageList.Create(self);
  450. ListView1.SmallImages:=TImageList.Create(self);
  451. SysImageList := SHGetFileInfo('', 0, SFI,
  452. SizeOf(TSHFileInfo), SHGFI_SYSICONINDEX or SHGFI_LARGEICON);
  453. if SysImageList <> 0 then begin
  454. ListView1.Largeimages.Handle := SysImageList;
  455. ListView1.Largeimages.ShareImages := TRUE;
  456. end;
  457. SysImageList := SHGetFileInfo('', 0, SFI, SizeOf(TSHFileInfo),
  458. SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
  459. if SysImageList <> 0 then begin
  460. ListView1.Smallimages.Handle := SysImageList;
  461. ListView1.Smallimages.ShareImages := TRUE;
  462. end;
  463. end;
  464.  
  465. procedure TForm1.N3Click(Sender: TObject);
  466. begin
  467. if (ListView1.Selected<>nil) and (Listview1.Items.Count>0) then
  468. ShellExecute(Application.MainForm.Handle, nil,nil, '',PChar(ExtractFilePath(listview1.Selected.Caption)), SW_SHOW);
  469. end;
  470.  
  471.  
  472. procedure TForm1.SpeedButton8Click(Sender: TObject);
  473. var
  474. filter,desc,e:string;
  475. begin
  476. case Speedbutton8.Tag of
  477. 1: begin
  478. if Listview2.Selected<>nil then begin
  479. filter:=Listview2.Selected.Caption;
  480. Desc:=Listview2.Selected.SubItems.Strings[1];
  481.  
  482.  
  483. Listview2.Selected.Caption:=filter;
  484. Listview2.Selected.SubItems.Strings[0]:=ExtractFileExt(filter);
  485. Listview2.Selected.SubItems.Strings[1]:=Desc;
  486. end;
  487. end;
  488. end;
  489. 2: begin
  490. if Listview3.Selected<>nil then begin
  491. e:=Listview3.Selected.Caption;
  492. Desc:=Listview3.Selected.SubItems.Strings[0];
  493.  
  494.  
  495. Listview3.Selected.Caption:=e;
  496. Listview3.Selected.SubItems.Strings[0]:=desc;
  497. end;
  498. end;
  499. end;
  500. end;
  501. end;
  502.  
  503. procedure TForm1.SaveNastr;
  504. var
  505. i:integer;
  506. Ini:TIniFile;
  507. begin
  508. DeleteFile(ExtractFilePath(ParamStr(0))+'Config.ini');
  509. Ini:=TiniFile.Create(ExtractFilePath(ParamStr(0))+'Config.ini');
  510. With Ini do begin
  511. WriteInteger('Filters','Count',Listview2.items.count);
  512. for i:=0 to Listview2.items.count-1 do begin
  513. WriteString('Filters','F'+Inttostr(i),Listview2.items[i].caption);
  514. WriteString('Filters','D'+Inttostr(i),Listview2.items[i].SubItems.Strings[1]);
  515. end;
  516. WriteInteger('Exclusion','Count',Listview3.items.count);
  517. for i:=0 to Listview3.items.count-1 do begin
  518. WriteString('Exclusion','E'+inttostr(i),Listview3.items[i].caption);
  519. Application.ProcessMessages;
  520. WriteString('Exclusion','D'+Inttostr(i),Listview3.items[i].SubItems.Strings[0]);
  521. end;
  522. WriteInteger('Path','Count',(CheckListBox1.count-1)-LastIndex);
  523. for i:=LastIndex+1 to CheckListBox1.count-1 do begin
  524. WriteString('Path','P'+inttostr(i-LastIndex-1),CheckListBox1.Items[i]);
  525. end;
  526. end;
  527. Ini.Free;
  528. end;
  529.  
  530. procedure TForm1.LoadNastr;
  531. var
  532. Ini:TIniFile;
  533. Str:string;
  534. count,i:integer;
  535. begin
  536. Ini:=TiniFile.Create(ExtractFilePath(ParamStr(0))+'Config.ini');
  537. Count:=Ini.ReadInteger('Filters','Count',0);
  538. for i:=1 to Count do AddExt(Ini.readString('Filters','F'+inttostr(i-1),''),Ini.readString('Filters','D'+inttostr(i-1),''),true,Listview2);
  539. Count:=Ini.ReadInteger('Exclusion','Count',0);
  540. for i:=1 to Count do AddExl(Ini.readstring('Exclusion','E'+inttostr(i-1),''),Ini.readstring('Exclusion','D'+inttostr(i-1),''),true,listview3);
  541. Count:=Ini.ReadInteger('Path','Count',0);
  542. for i:=1 to Count do begin
  543. CheckListbox1.Items.Add(Ini.readstring('Path','P'+inttostr(i-1),''));
  544. CheckListbox1.Checked[CheckListbox1.Count-1]:=true;
  545. end;
  546. Ini.Free;
  547. end;
  548.  
  549. procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  550. begin
  551. SaveNastr;
  552. end;
  553.  
  554. procedure TForm1.SpeedButton1Click(Sender: TObject);
  555. begin
  556. SpeedButton1.Visible:=false;
  557. SpeedButton2.Visible:=true;
  558. EnabledButtons(false);
  559. FindFiles;
  560. SpeedButton1.Visible:=true;
  561. SpeedButton2.Visible:=false;
  562. EnabledButtons(true);
  563. end;
  564.  
  565. procedure TForm1.SpeedButton2Click(Sender: TObject);
  566. begin
  567. Stop:=true;
  568. SpeedButton2.Visible:=true;
  569. end;
  570.  
  571. procedure TForm1.SpeedButton3Click(Sender: TObject);
  572. begin
  573. CheckAll(false);
  574. end;
  575.  
  576. procedure TForm1.SpeedButton4Click(Sender: TObject);
  577. begin
  578. CheckAll(true);
  579. end;
  580.  
  581. procedure TForm1.SpeedButton5Click(Sender: TObject);
  582. begin
  583. case Speedbutton5.Tag of
  584. 0: if CheckListBox1.ItemIndex>-1 then checklistbox1.DeleteSelected;
  585. 1: if ListView2.Selected<>nil then Listview2.Selected.Delete;
  586. 2: if ListView3.Selected<>nil then Listview3.DeleteSelected;
  587. 3: DeleteFileSelected;
  588. end;
  589. end;
  590.  
  591. procedure TForm1.SpeedButton6Click(Sender: TObject);
  592. begin
  593. case Speedbutton6.Tag of
  594. 0: CheckListbox1.Clear;
  595. 1: Listview2.Clear;
  596. 2: Listview3.Clear;
  597. 3: DeleteAll;
  598. end;
  599. end;
  600.  
  601. procedure TForm1.N8Click(Sender: TObject);
  602. var
  603. filename,str:string;
  604. i:integer;
  605. flag:boolean;
  606. begin
  607. if Listview1.Selected<>nil then begin
  608. filename:=ExtractFileName(Listview1.Selected.Caption);
  609.  
  610. AddExl(filename,Str,true,listview3);
  611. repeat
  612. flag:=false;
  613. for i:=0 to ListView1.Items.Count-1 do begin
  614. if filename=ExtractFileName(Listview1.Items[i].Caption) then begin
  615. Listview1.Items[i].Delete;
  616. flag:=true;
  617. break;
  618. end;
  619. end;
  620. until flag=false;
  621. end;
  622. end;
  623.  
  624.  
  625. procedure TForm1.AddExt(Extension,Description:string; EChecked:boolean; List:TListview);
  626. var
  627. ListItem: TListItem;
  628. begin
  629. ListItem:=List.Items.Add;
  630. with Listitem do begin
  631. Caption:=Extension;
  632. SubItems.Add(ExtractFileExt(Caption));
  633. SubItems.Add(Description);
  634. Checked:=EChecked;
  635. end;
  636. end;
  637.  
  638. procedure TForm1.AddExl(Path,Description:string; EChecked:boolean; List:TListview);
  639. var
  640. ListItem: TListItem;
  641. begin
  642. ListItem:=List.Items.Add;
  643. with Listitem do begin
  644. Caption:=Path;
  645. SubItems.Add(Description);
  646. Checked:=EChecked;
  647. end;
  648. end;
  649.  
  650.  
  651. procedure TForm1.N10Click(Sender: TObject);
  652. begin
  653. Listview1.Clear;
  654. end;
  655.  
  656. procedure TForm1.SpeedButton7Click(Sender: TObject);
  657. var
  658. f,d:string;
  659. ListItem: TListItem;
  660. begin
  661. case Speedbutton7.Tag of
  662. 0: begin
  663. form2.Tag:=1;
  664. form2.Show;
  665. end;
  666. 1: begin
  667. f:='';
  668.  
  669. if Trim(f)<>'' then begin
  670.  
  671. AddExt(f,d,true,ListView2);
  672. end;
  673. end;
  674. 2: begin
  675. form2.Tag:=0;
  676. Form2.show;
  677. end;
  678. end;
  679. end;
  680.  
  681. procedure TForm1.N4Click(Sender: TObject);
  682. var
  683. str:string;
  684. begin
  685. if Listview1.Selected<>nil then begin
  686. str:='';
  687. if (ListView1.Selected<>nil) and (Listview1.Items.Count>0) then begin
  688.  
  689. AddExl(Listview1.Selected.Caption,Str,true,listview3);
  690. Listview1.DeleteSelected;
  691. end;
  692. end;
  693. end;
  694.  
  695. procedure TForm1.TabbedNotebook1Change(Sender: TObject; NewTab: Integer;
  696. var AllowChange: Boolean);
  697. begin
  698. if (NewTab=4) then EnabledButtons(false) else EnabledButtons(true);
  699. Speedbutton7.Tag:=NewTab;
  700. Speedbutton8.Tag:=NewTab;
  701. Speedbutton5.Tag:=NewTab;
  702. Speedbutton6.Tag:=NewTab;
  703. if (NewTab=0) or (NewTab=3) or (NewTab=4) then SpeedButton8.Enabled:=false else SpeedButton8.Enabled:=true;
  704. if (NewTab=3) or (NewTab=4) then SpeedButton7.Enabled:=false else SpeedButton7.Enabled:=true;
  705. end;
  706.  
  707. procedure TForm1.FindFolders(Dir:String; var Folders:integer);
  708. Var
  709. DirInfo:TSearchRec;
  710. FindRes:Integer;
  711. begin
  712. FindRes:=FindFirst(Dir+'*.*',faAnyFile,DirInfo);
  713. While FindRes=0 do begin
  714. if ((DirInfo.Attr and faDirectory)=faDirectory) and ((DirInfo.Name='.')or(DirInfo.Name='..')) then begin
  715. FindRes:=FindNext(DirInfo);
  716. Continue;
  717. end;
  718. if ((DirInfo.Attr and faDirectory)=faDirectory) then begin
  719. FindFolders(Dir+DirInfo.Name+'\',Folders);
  720. FindRes:=FindNext(DirInfo);
  721. Folders:=Folders+1;
  722. Continue;
  723. end;
  724. FindRes:=FindNext(DirInfo);
  725. end;
  726. FindClose(DirInfo);
  727. end;
  728.  
  729. function TForm1.GetQuanFolders(Path:string):integer;
  730. var
  731. f:integer;
  732. begin
  733. FindFolders(Path,f);
  734. Result:=f;
  735. end;
  736.  
  737.  
  738.  
  739.  
  740.  
  741. end.
  742.  


Place Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Place (статус: Посетитель)
Вопрос отправлен: 30 сентября 2012, 17:20
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 2; последнее сообщение — 7 октября 2012, 13:53; участников в обсуждении: 2.
eclipse

eclipse (статус: Посетитель), 4 октября 2012, 20:43 [#1]:

Ёпта! по -другому никак не ответить! Тебе, с таким желанием либо писать новую прогу, либо попросить этого чела, который писал эту прогу, чтоб он переделал её на твой лад :))))
Tip.the.besT

Tip.the.besT (статус: Посетитель), 7 октября 2012, 13:53 [#2]:

Как вариант на события onclick верхних кнопок или чего там у тебя pagecontrol, не могу понять, поставить нечто подобное:
NameButton.enabled:=false;

а где надо, что бы была ставишь:
NameButton.enabled:=true;

Можно конечно и так:
NameButton.visible:=true;
NameButton.visible:=false;

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:43
Выполнено за 0.04 сек.