Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
ВнизВопрос по ListView Найти похожие ветки
← →
Rusar (2004-04-13 18:01) [0]Имеется ListView куда добавляеться информация о файлах из конкретного каталога. Само название файла не пишется в ListView, только параметры файла( ну надо так). Где и как сохранить имя файла и путь, что бы при двойном щелчке на строке запустился нужный файл? Понимаю, что вроде где то надо хранить указатель или что-то в этом роде, но не могу додуматься. Если можно подробно объяснить....
← →
Семен Сорокин © (2004-04-13 18:05) [1]заноси в TListItem.Data указатель на полное имя файла.
← →
Rusar © (2004-04-13 18:10) [2]Прошу прощения за глупый вопрос - но как именно. Имя файла у меня содержится в переменно path_name: String
← →
easy © (2004-04-13 18:26) [3]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls,shellapi;
type
PMyRec = ^TMyRec;
TMyRec = record
path: string;
//...
end;
type
TForm1 = class(TForm)
ListView1: TListView;
Button1: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure ListView1DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
ListItem:TListItem;
MyRec:PMyRec;
begin
if OpenDialog1.Execute then
ListItem:=ListView1.Items.Add;
ListItem.Caption:=extractfilename(OpenDialog1.FileName);
new(MyRec);
MyRec^.path:=OpenDialog1.FileName;
//MyRec^....
ListItem.Data:=MyRec;
end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
i:integer;
begin
for i:=0 to ListView1.Items.Count-1 do
Dispose(PMyRec(ListView1.Items[i].Data));
end;
procedure TForm1.ListView1DblClick(Sender: TObject);
begin
shellexecute(handle,"open",pchar(PMyRec(ListView1.Selected.Data)^.path),
"","",SW_SHOWNORMAL);
end;
end.
← →
easy © (2004-04-13 18:27) [4]if OpenDialog1.Execute then begin
ListItem:=ListView1.Items.Add;
ListItem.Caption:=extractfilename(OpenDialog1.FileName);
new(MyRec);
MyRec^.path:=OpenDialog1.FileName;
//MyRec^....
ListItem.Data:=MyRec;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c