Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

Избранное как в 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;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.559 c
14-1109100378
Anton_K
2005-02-22 22:26
2005.03.13
Про ламёров


1-1109316148
АМБ
2005-02-25 10:22
2005.03.13
Пересветка компонент на форме


4-1106980489
Ismail
2005-01-29 09:34
2005.03.13
Господа программеры помогите!!!!!!!!!!!


14-1107430238
Ломброзо
2005-02-03 14:30
2005.03.13
А что там Жириновский такого про Казахстан ляпнул?...


3-1107950887
Kat
2005-02-09 15:08
2005.03.13
запрос, выбирающий записи с одинковым содержимым полем





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский