Sdílet prostřednictvím


Základy nástrojů

Tento článek popisuje základní implementace MFC, která umožňuje přidat výchozí panel nástrojů aplikace výběrem možnosti v Průvodci aplikace.Témata pokrývají:

  • Možnost panelu nástrojů Průvodce aplikací

  • Panel nástrojů v kódu

  • Úpravy zdroje nástrojů

  • Více panelů nástrojů

Možnost použití Průvodce nástrojů

Chcete-li získat jeden panel nástrojů s výchozí tlačítka, vyberte možnost Standardní ukotvení panelu nástrojů na stránce s názvem funkce uživatelského rozhraní.Kód přidá do aplikace:

  • Vytvoří objekt panelu nástrojů.

  • Spravuje nástrojů, včetně jeho schopnost ukotvení nebo uvolnění.

Panel nástrojů v kódu

Panel nástrojů je CToolBar objekt deklarované jako datový člen v aplikaci CMainFrame třídy.Jinými slovy je v hlavním rámci okno objektu vloženého objektu panelu nástrojů.To znamená, že MFC vytvoří rámeček okna a ničí panelu nástrojů, když jej ničí okno snímku vytvoří panel nástrojů.Následující prohlášení částečné třídy pro více aplikací rozhraní dokumentu zobrazuje datové členy pro vložený nástrojů a vložené stavovém.Zobrazuje také přepsat z OnCreate členské funkce.

class CMainFrame : public CMDIFrameWnd
{
// Implementation
protected:  // control bar embedded members
   CStatusBar  m_wndStatusBar;
   CToolBar    m_wndToolBar;

// Generated message map functions
protected:
   afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
   DECLARE_MESSAGE_MAP()

Probíhá vytváření nástrojů CMainFrame::OnCreate.MFC volání OnCreate po vytvoření rámce, ale zobrazí se okno.Výchozí OnCreate , generuje aplikace Průvodce provede následující úkoly na panelu nástrojů:

  1. Volání CToolBar objektu vytvořit členské funkce vytvořit základní CToolBarCtrl objektu.

  2. Volání LoadToolBar načíst informace o zdroji nástrojů.

  3. Volání funkce povolit docking, plovoucí a tipy nástrojů.Podrobnosti o těchto volání, naleznete v článku Docking a plovoucí panely nástrojů.

[!POZNÁMKA]

Obecné MFC vzorku DOCKTOOL zahrnuje ilustrace staré i nové panely nástrojů MFC.Panely nástrojů, které používají COldToolbar vyžadují volání v kroku 2 na LoadBitmap (spíše než LoadToolBar) a SetButtons.Nové panely nástrojů vyžadují volání na LoadToolBar.

Ukotvení, plovoucí a nástroj tipy volání jsou volitelné.Můžete odebrat tyto řádky z OnCreate Pokud dáváte přednost.Výsledkem je panel nástrojů, které zůstávají pevné, plovoucí nebo redock a nelze zobrazit tipy nástrojů.

Úpravy zdroje nástrojů

Výchozí panel nástrojů získat pomocí Průvodce aplikace je založena na RT_TOOLBAR vlastní zdroje, zavedené v MFC verze 4.0.Tento prostředek s lze upravit panel nástrojů editoru.Editor umožňuje přidat, odstranit a změnit uspořádání tlačítek.Obsahuje grafický editor pro tlačítka, která je velmi podobná obecný grafický editor jazyka Visual C++.Upravili jste panely v předchozích verzích aplikace Visual C++, zjistíte úkol mnohem jednodušší nyní.

Tlačítko panelu nástrojů se připojit k příkazu, dáte tlačítko ID příkazu, například ID_MYCOMMAND.Na stránce vlastností na tlačítko v panelu nástrojů editoru zadejte ID příkazu.Vytvořte funkci zpracování příkazu (viz Mapování zprávy funkce Další informace).

Nový CToolBar funkce členů pracovat RT_TOOLBAR prostředku.LoadToolBar nyní probíhá z LoadBitmap načíst rastrový obrázek obrázky tlačítek panelu nástrojů, a SetButtons styly tlačítka a tlačítka připojit s bitmapovými obrazy.

Podrobnosti o používání nástrojů editoru viz Panel nástrojů editoru.

Více panelů nástrojů

Průvodce aplikací poskytuje jednu výchozí panel nástrojů.Pokud potřebujete více než jeden panel nástrojů v aplikaci, můžete model pro další panely nástrojů výchozí kód vytvořený Průvodcem na základě kódu.

Pokud chcete zobrazit panel nástrojů jako výsledek příkazu, budete muset:

  • Panel nástrojů editoru vytvořte nový zdroj nástrojů a zavést v OnCreate se LoadToolbar členské funkce.

  • Vložit nový CToolBar objektu ve své třídě okna Hlavní rámec.

  • Zkontrolujte volá příslušnou funkci v OnCreate ukotvení nebo plovoucí panel nástrojů, nastavit styly a tak dále.

f9hbax0b.collapse_all(cs-cz,VS.110).gifCo chcete vědět více?

Viz také

Koncepty

Implementace nástrojů MFC