× Aktuálně z oboru

Programátoři po celém světě dnes slaví Den programátorů [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]
Celá zprávička [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]

Přidání vlastního tlačítka do panelu nástrojů v IE

[ http://programujte.com/profil/20356-ondrej-hlavaty/ ]Google [ ?rel=author ]       [ http://programujte.com/profil/118-zdenek-lehocky/ ]Google [ ?rel=author ]       11. 6. 2006       12 378×

Chcete mít vlastní tlačítko v panelu nástrojů Internet Exploreru?

Možná znáte různé programy, které se snaží vylepšit a rozšířit funkce Internet Exploreru. Oblíbenou módou zejména různých vyhledávačů (a to i českých) je vnutit svým uživatelům drobné utility, které například rozšíří nástrojový panel IE o vyhledávací políčko daného vyhledávače nebo umožní například odeslat zprávu SMS. Ponechme teď stranou, jak užitečné či neužitečné podobné prográmky jsou a zkusme si něco obdobného. Ukážeme si, jak přidat do panelu nástrojů vlastní tlačítko, které spustí námi definovanou aplikaci. Zároveň se do menu Nástroje přidá další položka se stejnou funkcí.

Celé je to vlastně velmi jednoduché a je to opět záležitost systémového registru, kam do příslušné větve IE vložíme náš záznam. Zdrojový kód tedy může vypadat například takto:


procedure TlacitkoIE(Path: string);
const
  Tagit = `\{10954C80-4F0F-11d3-B17C-00C0DFE39736}\`;
var
  Reg: TRegistry;
  Vetev: string;
begin
  Reg := TRegistry.Create;
  try
    with Reg do
    begin
      RootKey := HKEY_LOCAL_MACHINE;
      Vetev := `Software\Microsoft\Internet Explorer\Extensions` + Tagit;
      OpenKey(Vetev, True);
      WriteString(`ButtonText`, `Text tlačítka`); 
      WriteString(`MenuText`, `Název položky v menu`);
      WriteString(`MenuStatusBar`, `Run Script`); 
      WriteString(`ClSid`, `{1FBA04EE-3024-11d2-8F1F-0000F87ABD16}`);
      WriteString(`Default Visible`, `Yes`); //Zobrazit?
      WriteString(`Exec`, Path); //Spustíme to co je jako parametr procedury
      WriteString(`HotIcon`, `,4`);
      WriteString(`Icon`, `,4`); //Číslo ikony
    end
  finally
    Reg.CloseKey;
    Reg.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
TlacitkoIE(`c:\windows\calc.exe`);
end;

Náš příklad přidá do nástrojové lišty tlačítko s nadpisem Text tlačítka a přidá do menu položku Název položky v menu. Pokud se vám na lištu tlačítko nepřidá, budete ho muset přes menu Zobrazit -> Panely nástrojů -> Vlastní přidat ručně a najdete ho mezi dostupnými položkami.

Aktivací tlačítka nebo položky z menu dojde ke spuštění Kalkulačky. Jak vidíte podle parametrů, lze též nastavit ikonku, která bude na tlačítku zobrazena a to jak ve své neaktivní podobě, tak po najetí myší. Místo mnou zvolené systémové ikony s číslem 4 můžete jako parametr pochopitelně uvést cestu k libovolné ikoně v souboru ICO nebo k nějaké jiné knihovně.

A jak se tlačítka a položky v menu zbavit, když už nás omrzí ? Jednoduše z registru smažeme příslušnou větev.

V registrech se dá ale nastavit ohledně IE ještě řada dalších zajímavých věcí, takže zájemci nechť si otevřou Editor registru a pustí se do hledání dalších lahůdek.


Článek stažen z webu Programujte.com [ http://programujte.com/clanek/2006060904-pridani-vlastniho-tlacitka-do-panelu-nastroju-v-ie/ ].