Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > popupmenu


Автор: The ded 26.4.2004, 18:50
Как реализовать приложение:
При выборе в опендайлоге файлов их расположение добавляется в листбох и в popupmenu1 создаются пунктики с extract-названием этих файлов, причём при щелчке на каждом из них открывается файл

Если можно скинуть исходник или просто показать код......... withstupid.gif

Автор: X-Vlad 26.4.2004, 22:30
Вот работающий код.
Код
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, Menus, ShellApi;

type
 TForm1 = class(TForm)
   ListBox1: TListBox;
   PopupMenu1: TPopupMenu;
   OpenDialog1: TOpenDialog;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
  procedure MenuClick(Sender: TObject);
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.MenuClick(Sender: TObject);
Var
path:string;
begin
WITH Sender AS TMenuItem DO
 begin
  path:=listbox1.Items.Strings[TMenuItem(Sender).tag];
  shellexecute(handle,'open',PChar(path),'','',SW_NORMAL);
 end;
end;


procedure TForm1.Button1Click(Sender: TObject);
Var
MyItem:TMenuItem;
begin
if opendialog1.Execute then
 begin
  Listbox1.Items.Add(opendialog1.FileName);
  MyItem:=TMenuItem.Create(popupmenu1);
  MyItem.Caption:=extractfilename(opendialog1.FileName);
  MyItem.Tag:=listbox1.Count-1;
  MyItem.OnClick:=MenuClick;
  popupmenu1.Items.Add(myitem);
 end;
end;

end.


Если что-то непонятно пиши...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)