Share via


DOCKTOOL-Beispiel: Demonstriert andockbare Symbolleisten

Das DOCKTOOL-Beispiel demonstriert die Unterstützung für andockbare Symbolleisten. Eine andockbare Symbolleiste kann zugeordnet, an jeder Seite des übergeordneten Fensters angedockt oder abgetrennt werden bzw. in einem eigenen Minirahmenfenster mit CMiniFrameWnd.

SicherheitshinweisSicherheitshinweis

Dieser Beispielcode soll ein Konzept veranschaulichen, und es wird nur den Code, der für dieses Konzept relevant sind. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "Wie besehen"keine Garantien.

So erhalten Sie Beispiele und Anweisungen für deren Installation:

Um Beispiele von Visual Studio zuzugreifen

  • im Menü Hilfe Menü klicken Beispiele.

    Standardmäßig sind die Beispiele in installiert. Laufwerk: \Programme\Microsoft visual Studio 10.0\Samples\.

  • Die neueste Version dieses Beispiels und eine Liste der anderen Beispiele finden Sie unter Visual Studio Samples auf der MSDN-Website.

Erstellen und Ausführen des Beispiels

So erstellen Sie und führen das DOCKTOOL-Beispiel

  1. Öffnen Sie die Projektmappe docktool.sln.

  2. erstellen Sie Menü, klicken Sie auf erstellen.

  3. Debuggen Sie auf Menü, klicken Sie auf Starten ohne Debuggen.

Unterstützt andockbare Symbolleisten

Die folgenden drei Schritte sind notwendig, um eine andockbare Symbolleiste in Ihrer Anwendung zu platzieren:

  1. Andocken für das Rahmenfenster oder Ziel mithilfe der CFrameWnd::EnableDocking-Funktion zu aktivieren. Ein DWORD Parameter gibt an der Seite des Rahmenfensters das Andocken angenommen wird. Übergeben Sie Steuerleisten an einer beliebigen Stelle Andocken, CBRS_ALIGN_ANY an EnableDocking.

  2. Aktivieren Sie das für die Symbolleiste oder Quelle Andocken, indem für jede Symbolleiste CControlBar::EnableDocking aufrufen. Geben Sie die Ziel-Seiten, die Symbolleiste verankern sollten. Wenn keine der angegebenen Seiten die Seiten im Rahmenfenster Andocken aktiviert übereinstimmt, kann nicht Verankern der Symbolleiste;Es bleibt unverankert. Sobald es unverankert wurde hat, bleibt es eine unverankerte Symbolleiste kann nicht an das Rahmenfenster angedockt.

  3. Docken Sie die Symbolleiste an das Rahmenfenster durch Aufrufen von CFrameWnd::DockControlBar. Rufen Sie dagegen CFrameWnd::FloatControlBar um eine andockbare Symbolleiste vom Rahmenfenster zu trennen.

Wenn Sie nicht alle drei Schritte abgeschlossen, wird die Anwendung eine Standardsymbolleiste angezeigt. Die letzten beiden Schritte müssen für jede andockbare Symbolleiste in der Anwendung erfolgen.

Um den Zustand der andockbaren Symbolleisten (ob angedockt oder unverankert) beizubehalten zwischen den Aufrufen der Anwendung verwenden Sie die CControlBar::SetBarStyle Funktionen CControlBar::GetBarStyle und zum Abrufen und die Einstellungen für alle bestimmten Steuerleiste wiederherstellen. Normalerweise ist diese Informationen in der INI-Datei der Anwendung mithilfe von CFrameWnd::SaveBarState und CFrameWnd::LoadBarState mit abgerufen gespeichert.

Schlüsselwörter

Dieses Beispiel demonstriert die Verwendung der folgenden Schlüsselwörter:

AfxGetApp; CArchive::IsStoring; CComboBox::Create; CComboBox::DeleteString; CComboBox::GetCount; CComboBox::InsertString; CComboBox::SetCurSel; CControlBar::GetBarStyle; CControlBar::SetBarStyle; CDialog::DoModal; CDocument::OnNewDocument; CFrameWnd::Create; CFrameWnd::DockControlBar; CFrameWnd::EnableDocking; CFrameWnd::LoadBarState; CFrameWnd::RecalcLayout; CFrameWnd::SaveBarState; CMenu::GetSubMenu; CMenu::LoadMenu; CMenu::TrackPopupMenu; CObject::AssertValid; CObject::Dump; CObject::Serialize; CRect::OffsetRect; CString::IsEmpty; CToolBar::Create; CToolBar::GetItemRect; CToolBar::LoadBitmap; CToolBar::SetButtonInfo; CToolBar::SetButtons; CView::GetDocument; CView::OnDraw; CWinApp::AddDocTemplate; CWinApp::InitInstance; CWinApp::LoadStdProfileSettings; CWinApp::OnFileNew; CWnd::ClientToScreen; CWnd::DoDataExchange; CWnd::FromHandlePermanent; CWnd::GetParentFrame; CWnd::GetStyle; CWnd::GetWindowPlacement; CWnd::GetWindowRect; CWnd::GetWindowText; CWnd::Invalidate; CWnd::IsZoomed; CWnd::OnClose; CWnd::OnCreate; CWnd::PreTranslateMessage; CWnd::SendMessage; CWnd::SetWindowPlacement; CWnd::SetWindowPos; CWnd::SetWindowText; CWnd::ShowWindow; GetProfileInt; GetProfileString; GetStockObject; HIWORD; LOWORD; LoadBitmap; WriteProfileString; wsprintf

Hinweis

Einige Beispiele, z. B. eine, wurden nicht geändert, um Änderungen in der Visual C++-Assistenten, Bibliotheken und Compiler, demonstrieren aber dennoch wie Sie die gewünschte Aufgabe durchführen.

Siehe auch

Weitere Ressourcen

MFC-Beispiele