![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
помогите чайнику плз
hahol © (2007-08-04 19:30:00)почему данная запись не работает
она почемуто выводит не полное имя файла,находящегося в списке с индексом i , а только название и его расширение:
extractfilename(play_list.ListBox1.Items[i]);
Zagaevskiy (2007-08-05 09:18:00) [1]
> Yanis © (04.08.07 21:46) [52]
>
> > вообще ни разу не видел как кто-то программирует?
>
> А ты, примеру, часто видел?
Да, доввольно часто :) примерно месяц сидел и смотрел, как один чел писал игру "О счастливчик" даже подсказывал чего-то(это было на заре моего программирования :]).Теперь понимаю, как мы там ВСЁ тупо делали.
Zagaevskiy (2007-08-05 09:15:00) [2]
> {RASkov} © (04.08.07 22:19) [53]
Объясняю :
1 : "{RASkov} © (04.08.07 20:39) [28]
> [27] hahol (04.08.07 20:38)
> там нет свойства multiselect
ошибаешься..."
2 : "Zagaevskiy © (04.08.07 20:46) [34]
> ошибаешься...
А как?"
Вот и всё. Насчёт ошибок - я торопился
{RASkov} (2007-08-04 22:19:00) [3]> [37] Zagaevskiy © (04.08.07 20:52)
> to {RASkov} CоРРи
> Оченно извЕняюсь
Я с ошибками пишу не специально.... ошибаюсь и стыдно потом за свои посты...
И в этой ветке.... ошибок понаделал как в русском так и в английском...(
А уж очень молодых, прет походу специально делать ошибки.... :)
Я хоть и сам не "стар" еще, но, что-то "невтыкает" ошибаться... :о)
Впрочем фик с ними... с ошибками... но порой думаешь, что же именно имелось ввиду )
Сорри за оффтоп...
Yanis (2007-08-04 21:46:00) [4]
> вообще ни разу не видел как кто-то программирует?
А ты, примеру, часто видел?
{RASkov} (2007-08-04 21:40:00) [5]Только в примере в [50] нет никаких проверок, так, что будь внимательным при обращении к Объектам в листбоксе...
{RASkov} (2007-08-04 21:38:00) [6]> hahol
На тебе почти готовый плейлист....
Кинь на форму TListBox, TButton и TOpenDialog... и проставь обработчики в инспекторе...
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TFileData = class
SFileName, SortName, SExt: String;
end;
TForm1 = class(TForm)
Button1: TButton;
OpenDialog1: TOpenDialog;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
procedure ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
procedure ListBox1DblClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
OpenDialog1.Options:=OpenDialog1.Options+[ofAllowMultiSelect];
ListBox1.Style:=lbOwnerDrawFixed;
end;
procedure TForm1.Button1Click(Sender: TObject);
var FD: TFileData; N: Integer;
begin
if OpenDialog1.Execute then
for N := 0 to OpenDialog1.Files.Count-1 do begin
FD:=TFileData.Create;
FD.SFileName:=OpenDialog1.Files[N];
FD.SExt:=ExtractFileExt(FD.SFileName);
FD.SortName:=ExtractFileName(FD.SFileName);
Delete(FD.SortName, LastDelimiter('.', FD.SortName), Length(FD.SExt));
Delete(FD.SExt, 1, 1);
ListBox1.AddItem('', FD);
end;
end;
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
var FD: TFileData; W: Integer;
begin
with TListBox(Control) do begin
Canvas.FillRect(Rect);
FD:=TFileData(Items.Objects[Index]);
Canvas.Font.Color:=clRed;
DrawText(Canvas.Handle, PChar(FD.SExt), -1, Rect, DT_RIGHT);
W:=Canvas.TextWidth(FD.SExt);
Rect.Right:=Rect.Right-W;
Canvas.Font.Color:=clBlue;
DrawText(Canvas.Handle, PChar(FD.SortName), -1, Rect, DT_LEFT or DT_END_ELLIPSIS);
end;
end;
procedure TForm1.ListBox1DblClick(Sender: TObject);
var FD: TFileData;
begin
FD:=TFileData(ListBox1.Items.Objects[ListBox1.ItemIndex]);
ShowMessage(FD.SFileName);
end;
end.
Разберешься....
Zagaevskiy (2007-08-04 21:24:00) [7]кстати.Если сам учишся нужно понимание процесса.например:\
extractfilename не начинает тупо искать по компу, где есть такой файл, а выделяетимя из строки, которую ты туда засуниш. заранее пожалста :)))))))
Zagaevskiy (2007-08-04 21:20:00) [8]
> hahol (04.08.07 21:18) [46]
> меня не кто ни чему не учил
> все сам
> а за помощь спасибо все пашет
так прям и сам? вообще ни разу не видел как кто-то программирует?
Zagaevskiy (2007-08-04 21:19:00) [9]именование с "0" начинается(это если не знаеш)
hahol (2007-08-04 21:18:00) [10]меня не кто ни чему не учил
все сам
а за помощь спасибо все пашет
Zagaevskiy (2007-08-04 21:17:00) [11]OpenDialog1.Files.Count наверное? и вообще, тебя не учили нажимать
CTRL+<пробел>?
begin...end (2007-08-04 21:14:00) [12]> помущаюца
От слова "мущщина"?
hahol (2007-08-04 21:14:00) [13]а как узнать сколко файлов я выбрал
Zagaevskiy (2007-08-04 21:07:00) [14]насколько я понял OpenDialog1.Files[i]
Alien1769 (2007-08-04 21:07:00) [15]
> как мне их кинуть потом в listbox
лучше добавить /add/
hahol (2007-08-04 21:03:00) [16]а куда помущаюца имена выбранных файлов
веть opendialo.filename - это не массив а перменная типа стринг
как мне их кинуть потом в listbox
Zagaevskiy (2007-08-04 20:59:00) [17]Options+ ofAllowMultiSelect
hahol (2007-08-04 20:57:00) [18]{RASkov} я чет пропустил твой ответ так значит там есть свойство multiselect
но почему я его не найду в Object inspector
может она както па другому называеца
помоги плз
Zagaevskiy (2007-08-04 20:52:00) [19]А вообще используй лучше OpenDialog.
to {RASkov} CоРРи
Оченно извЕняюсь
Zagaevskiy (2007-08-04 20:50:00) [20]Samples.Но и в tfilelistbox должОн быть полный путь. Лазать искать - неахота, лучше спросить у того, кто пользовался