408 Приложение
if ss[Length(ss)] <> '\' then ss :•= ss+'\';
ss := ss+s; {Добавляем маршрут поиска) {Сообщать имя} R.Assign(l,l,48,2) ;
Р".Insert(New(PStaticText,Init(R,#3+ss))) ;
SetFile(ss); {Помещаем файл в архив} PS := At(k) ;
PS^ := s end end;
Dispose(P,Done);
PL^.Draw
end; f'rAcW.i.IeBox.Setfi.IesJ I— —————-.-__——_
Procedure TInpLine.HandleEvent;
{Обработчик событий строки ввода имени или маски выбора файлов: выдает команду cmCDW, если изменен статус ввода) begin
TInputLine.HandleEvent(Event) ;
if (Event.What = evKeyDown) and (Event.KeyCode ° kbEnter) then
Message(Owner,evBroadcast,cmCDW,@Self) end; {TInpLine.HandleEvent) _————————..————;
Procedure TFileListBox.SetAll;
{Дополняет признаком выбора имена всех файлов) var
S: String;
k: Integer;
begin
with PFL" do for k := 0 to pred(Count) do begin
s :« GetText(k,255) ;
if s[Length(s)] <> #251 then
MarkF(s) else
DemarkF(s) ;
AtFree(k) ;
Insert (NewStr (s) ) end
and; {TFileListBox.SetAll} ^-———————————;
Procedure TFileListBox.GetDir(WC: String);
{Формирует коллекцию из имен файлов текущего каталога) var
SR: SearchRec;
AllExe: Boolean;
label
Rep;
begin
AllExe := HC='*.*';
if AllExe then WC := '*.com1;
PFL := New(PStringCollection, Init(10,5)) ;
Rep:
FindFirst(WC,$27,SR) ;
while DOSError a" 0 do begin