Podstawy paska narzędzi
W tym artykule opisano podstawowe implementacji MFC, który umożliwia dodawanie narzędzi domyślnej aplikacji, wybierając odpowiednią opcję w Kreatorze aplikacji.Omówione tematy obejmują:
Kreator aplikacji opcji paska narzędzi
Pasek narzędzi w kodzie
Edytowanie zasobów narzędzi
Wiele pasków narzędzi
Opcja paska narzędzi aplikacji Kreatora
Uzyskanie jednego paska narzędzi z domyślnych przycisków, wybierz opcję pasek narzędzi Standardowy dokowanie na stronie etykietą funkcje interfejsu użytkownika.Spowoduje to dodanie kodu do aplikacji że:
Tworzy obiekt paska narzędzi.
Zarządza paska narzędzi, w tym jej zdolność do stacji dokującej lub float.
Pasek narzędzi w kodzie
Pasek narzędzi jest CToolBar obiektu zadeklarowane jako członek danych aplikacji CMainFrame klasy.Innymi słowy obiekt paska narzędzi jest osadzony w główna ramka obiektu window.Oznacza to, MFC tworzy paska narzędzi, tworzy okno ramki i niszczy paska narzędzi, gdy niszczy okno ramek.Następujące oświadczenie częściowej klasy dla wielu aplikacji interfejsu (MDI) dokumentu przedstawiono elementy członkowskie danych osadzonych narzędzi i pasek stanu osadzonych.Pokazuje także override z OnCreate funkcji składowej.
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()
Tworzenie narzędzi występuje w CMainFrame::OnCreate.Wywołania MFC OnCreate po utworzeniu okna dla ramki, ale przed staje się widoczna.Domyślnie OnCreate że generuje Kreatora aplikacji wykonuje następujące zadania narzędzi:
Wywołania CToolBar obiektu Tworzenie Członkowskich funkcji do tworzenia podstawowej CToolBarCtrl obiektu.
Wywołania LoadToolBar załadować informacje o zasobie paska narzędzi.
Wywołuje funkcje umożliwiające dokowanie, pływające i podpowiedzi.Szczegółowe informacje na temat tych połączeń, zobacz artykuł dokowanie i przestawne paski narzędzi.
[!UWAGA]
Próbki ogólnej MFC DOCKTOOL zawiera ilustracje stare i nowe paski narzędzi MFC.Paski narzędzi, które używają COldToolbar wymaga wywołania w kroku 2, aby LoadBitmap (zamiast LoadToolBar) i SetButtons.Nowe paski narzędzi wymaga wywołania LoadToolBar.
Dokowanie, pływające i narzędzie porady dotyczące połączeń są opcjonalne.Można usunąć te wiersze z OnCreate , jeśli wolisz.Wynik jest pasek narzędzi, który pozostaje stały, nie można float lub redock i nie można wyświetlić etykietki narzędzi.
Edytowanie zasobów narzędzi
Domyślny pasek narzędziowy uzyskać za pomocą Kreatora aplikacji jest oparty na RT_TOOLBAR zasobów niestandardowych, wprowadzone w wersji 4.0 MFC.Można edytować tego zasobu z narzędzi edytora.Edytor pozwala na łatwe dodawanie, usuwanie i rozmieszczanie przycisków.Zawiera on graficznego edytora przycisków, bardzo podobne do edytora ogólne grafiki w programie Visual C++.Jeśli edytowano pasków narzędzi w poprzednich wersjach języka Visual C++ można znaleźć zadania znacznie łatwiej teraz.
Aby połączyć polecenia przycisku paska narzędzi, można przycisku Nadaj identyfikator polecenia, takie jak ID_MYCOMMAND.Określ identyfikator polecenia na stronie właściwości przycisku na pasku narzędzi edytora.Następnie utwórz funkcji obsługi polecenia (zobacz Mapowanie wiadomości do funkcji Aby uzyskać więcej informacji).
Nowy CToolBar Członkowskich funkcje pracy z RT_TOOLBAR zasobów.LoadToolBar teraz odbywa się z LoadBitmap do ładowania bitmapy obrazy przycisków paska narzędzi, a SetButtons Ustawianie stylów przycisków i podłączyć przyciski z obrazami bitmapowymi.
Szczegółowe informacje dotyczące korzystania z narzędzi edytora Narzędzi edytora.
Wiele pasków narzędzi
Kreator aplikacji zapewnia domyślny pasek narzędzi.Jeśli potrzebujesz więcej niż jeden pasek narzędzi w aplikacji można modelu dla dodatkowe paski narzędzi domyślny kod wygenerowany przez kreatora na podstawie kodu.
Aby wyświetlić pasek narzędzi w wyniku polecenia, musisz:
Tworzenie nowego zasobu narzędzi z paska narzędzi edytora i załaduj go w OnCreate z LoadToolbar funkcji składowej.
Osadzić nowy CToolBar obiektu w ramce głównej klasy okna.
Marka wywołuje odpowiednią funkcję w OnCreate do stacji dokującej lub float paska narzędzi, należy ustawić jego style i tak dalej.
Co chcesz wiedzieć więcej?
CToolBar i CToolBarCtrl klas