Форум: "Сети";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
ВнизИзбранное как в IE Найти похожие ветки
← →
Konstantin (2005-01-03 06:53) [0]Подскажите как сделать сабж, плиз. Получить список закладок и добавлять новые я могу, но как сделать это в MainMenu динамически???
← →
volser (2005-01-03 11:16) [1]Подскажи, а как вообще управлять избранным (получить список и добавить новые)?
Popup_Link: TPopupMenu;
procedure pop_item1Click(Sender: TObject);
Var
pop_item, sub_item: TMenuItem;
pop_item := TMenuItem.Create(Popup_Link);
pop_item.OnClick:=pop_item1Click;
pop_item.Caption:="Title1";
Popup_Link.Items.Add(pop_item);
sub_item := TMenuItem.Create(Popup_Link);
sub_item.OnClick:=pop_item2Click;
sub_item.Caption:="Title2";
pop_item.Add(sub_item);
← →
Konstantin (2005-01-03 22:53) [2]Hi!!!
У меня так:procedure TForm1.Button1Click(Sender: TObject);
const
NotAllowed: set of Char = ["""] + ["/"] + ["\"] + ["?"] + [":"] + ["*"] +
["<"] + [">"] + ["|"];
var url: TStringList;
fav, title: string;
begin
fav := Load("Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","Favorites");
url := TStringList.Create;
try
url.Add("[InternetShortcut]");
url.Add("URL=" + Form1.Webbrowser1.LocationURL);
url.Add("WorkingDirectory=" + WinDir());
url.Add("IconIndex=0");
url.Add("ShowCommand=7");
url.Add("IconFile=" + GetSysDir() + "\url.dll");
title := Memo1.Text; //Название закладки
url.SaveToFile(fav + "\" + title + ".url");
finally
url.Free;
end;
← →
Konstantin (2005-01-03 22:58) [3]А вот так получить закладки:
procedure TForm1.Button2Click(Sender: TObject);
var
pidl: PItemIDList;
FavPath: array [0..MAX_PATH] of char;
begin
SHGetSpecialFolderLocation(Handle, CSIDL_FAVORITES, pidl);
SHGetPathFromIDList(pidl, favpath);
ListBox1.Items := GetIEFavourites(StrPas(FavPath));//Где их показать.
end;
Тут у меня и трабл. Не могу в MainMenu добавить динамически, чтобы пункты были по названию закладки, а по клику происходил переход на нужный URL.
← →
Konstantin (2005-01-03 23:49) [4]Как динамически создавать пункты и подпункты меню я умею, а вот чтобы они сами создавались по имени закладки при запуске приложения что-то не догоняю (((
← →
Konstantin © (2005-01-04 13:41) [5]Функция GetIEFavourites для получения закладок(см. выше)
function GetIEFavourites(const favpath: string): TStrings;
var
searchrec: TSearchrec;
str: TStrings;
path, dir, filename: string;
Buffer: array [0..2047] of Char;
found: Integer;
begin
str := TStringList.Create;
path := FavPath + "\*.url";
dir := ExtractFilepath(path);
found := FindFirst(path, faAnyFile, searchrec);
while found = 0 do
begin
SetString(filename, Buffer, GetPrivateProfileString("InternetShortcut",
PChar("URL"), nil, Buffer, SizeOf(Buffer), PChar(dir+searchrec.name)));
str.Add(filename);
found := FindNext(searchrec);
end;
found := FindFirst(dir + "\*.*", faAnyFile, searchrec);
while found=0 do
begin
if ((searchrec.Attr and faDirectory) > 0) and (searchrec.name[1] <> ".") then
str.AddStrings(GetIEFavourites(dir + "\" + searchrec.name));
found := FindNext(searchrec);
end;
FindClose(searchrec);
Result := str;
end;
← →
volser (2005-01-04 22:31) [6]В OnShow создавай их сам. В чем проблема?
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c