1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Inifiles, FileCtrl, MPlayer, ExtCtrls;
type TfrmMain = class(TForm) Button1: TButton; edtRelPath: TEdit; lblFileName: TLabel; MediaPlayer1: TMediaPlayer; Button2: TButton; Button3: TButton; Panel1: TPanel; Button4: TButton; Label3: TLabel; Label1: TLabel; GroupBox1: TGroupBox; RadioButton1: TRadioButton; RadioButton2: TRadioButton; RadioButton3: TRadioButton; RadioButton4: TRadioButton; RadioButton5: TRadioButton; RadioButton6: TRadioButton; RadioButton7: TRadioButton; RadioButton8: TRadioButton; Label2: TLabel; Label4: TLabel; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); private thefile : String; procedure FindFile (directory, filename: String);
{ Private-Deklarationen } public { Public-Deklarationen } end;
var frmMain: TfrmMain;
implementation
{$R *.dfm}
procedure TfrmMain.FindFile (directory, filename: String); var SearchRec : TSearchRec; NewPath : String; begin directory := IncludeTrailingBackslash (directory); try if FindFirst (directory + '*.*', faAnyFile, SearchRec) = 0 then repeat if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then begin if (SearchRec.Attr and faDirectory = faDirectory) then begin NewPath := IncludeTrailingBackslash (directory + SearchRec.Name); FindFile (NewPath, filename); Label3.Caption := NewPath; end else if filename = SearchRec.Name then begin thefile := directory + filename; Exit; end; end; until FindNext (SearchRec) <> 0; finally SysUtils.FindClose (SearchRec); end;
end;
procedure TfrmMain.Button1Click(Sender: TObject); const drivearray : array [0..1] of String = ('J:\', 'H:\'); var fixedpath : String; filename : String; directory : String; i : Integer; begin thefile := ''; fixedpath := ''; directory := IncludeTrailingBackSlash (fixedpath) + StringReplace (edtRelPath.Text, filename, '', [rfReplaceAll]);
for i := 0 to Length (drivearray) - 1 do begin filename := ExtractFileName (edtRelPath.Text); directory := IncludeTrailingBackslash (drivearray [i] + fixedpath) + StringReplace (edtRelPath.Text, filename, '', [rfReplaceAll]); FindFile (directory, filename); if thefile <> '' then begin lblFileName.Caption := thefile; Panel1.Caption := thefile; Exit; end; end; end; // btnFindClick
procedure TfrmMain.Button2Click(Sender: TObject); begin with mediaplayer1 do begin mediaplayer1.filename:= panel1.caption; mediaplayer1.open; mediaplayer1.Play; end; end;
procedure TfrmMain.Button3Click(Sender: TObject); begin mediaplayer1.stop; end;
procedure TfrmMain.Button4Click(Sender: TObject); begin close; end;
end. |