Araç Çubuğu Temelleri
Bu makalede, Uygulama Sihirbazı'nda bir seçenek belirleyerek uygulamanıza varsayılan bir araç çubuğu eklemenize olanak tanıyan temel MFC uygulaması açıklanmaktadır. Ele alınan konular:
Uygulama Sihirbazı Araç Çubuğu Seçeneği
Varsayılan düğmeleri olan tek bir araç çubuğu almak için, Kullanıcı Arabirimi Özellikleri etiketli sayfada Standart Yerleştirme araç çubuğu seçeneğini belirleyin. Bu, uygulamanıza şu kodu ekler:
Araç çubuğu nesnesini oluşturur.
Araç çubuğunu, takma veya kaydırma özelliği de dahil olmak üzere yönetir.
Koddaki Araç Çubuğu
Araç çubuğu, uygulamanızın sınıfının veri üyesi olarak bildirilen bir CToolBar nesnesidir.CMainFrame
Başka bir deyişle, araç çubuğu nesnesi ana çerçeve penceresi nesnesine eklenir. Başka bir deyişle MFC, çerçeve penceresini oluşturduğunda araç çubuğunu oluşturur ve çerçeve penceresini yok ettiğinde araç çubuğunu yok eder. Birden çok belge arabirimi (MDI) uygulaması için aşağıdaki kısmi sınıf bildirimi, eklenmiş bir araç çubuğu ve ekli durum çubuğu için veri üyelerini gösterir. Ayrıca üye işlevinin geçersiz kılmasını OnCreate
da gösterir.
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()
Araç çubuğu oluşturma işlemi içinde CMainFrame::OnCreate
gerçekleşir. MFC, çerçevenin penceresini oluşturduktan sonra ancak görünür hale gelmeden önce OnCreate'u çağırır. Uygulama Sihirbazı'nın oluşturduğu varsayılan ayar OnCreate
aşağıdaki araç çubuğu görevlerini yapar:
Temel alınan
CToolBar
CToolBarCtrl nesnesini oluşturmak için nesnenin Create member işlevini çağırır.Araç çubuğu kaynak bilgilerini yüklemek için LoadToolBar'ı çağırır.
Yerleştirme, kayan ve araç ipuçlarını etkinleştirmek için işlevleri çağırır. Bu çağrılar hakkında ayrıntılı bilgi için Yerleştirme ve Kayan Araç Çubukları makalesine bakın.
Dekont
MFC Genel örnek DOCKTOOL , hem eski hem de yeni MFC araç çubuklarının çizimlerini içerir. kullanan COldToolbar
araç çubukları için 2 LoadBitmap
. adımda (yerine LoadToolBar
) ve öğesine çağrı yapılması SetButtons
gerekir. Yeni araç çubukları için çağrı yapılması LoadToolBar
gerekir.
Yerleştirme, kayan ve araç ipuçları çağrıları isteğe bağlıdır. İsterseniz bu satırları'ndan OnCreate
kaldırabilirsiniz. Sonuç, sabit kalan, kayan veya yeniden yuvalanamayan ve araç ipuçlarını görüntüleyemeyen bir araç çubuğudur.
Araç Çubuğu Kaynağını Düzenleme
Uygulama Sihirbazı ile elde ettiğiniz varsayılan araç çubuğu, MFC sürüm 4.0'da kullanıma sunulan RT_TOOLBAR özel bir kaynağı temel alır. Bu kaynağı araç çubuğu düzenleyicisiyle düzenleyebilirsiniz. Düzenleyici, düğmeleri kolayca eklemenize, silmenize ve yeniden düzenlemenize olanak tanır. Visual C++ içindeki genel grafik düzenleyicisine çok benzeyen düğmeler için bir grafik düzenleyici içerir. Visual C++'ın önceki sürümlerinde araç çubuklarını düzenlediyseniz, görevi artık çok daha kolay bulacaksınız.
Bir araç çubuğu düğmesini komuta bağlamak için, düğmeye gibi ID_MYCOMMAND
bir komut kimliği verirsiniz. Düğmenin araç çubuğu düzenleyicisindeki özellik sayfasında komut kimliğini belirtin. Ardından komutu için bir işleyici işlevi oluşturun (daha fazla bilgi için bkz . İletileri İşlevlere Eşleme).
Yeni CToolBar üye işlevleri RT_TOOLBAR kaynağıyla çalışır. LoadToolBar artık araç çubuğu düğme görüntülerinin bit eşlemini yüklemek için LoadBitmap'in yerine geçer ve düğme stillerini ayarlamak ve bit eşlem görüntüleriyle düğmeleri bağlamak için Düğme Ayarla'yı alır.
Araç çubuğu düzenleyicisini kullanma hakkında ayrıntılı bilgi için bkz . Araç Çubuğu Düzenleyicisi.
Birden Çok Araç Çubuğu
Uygulama Sihirbazı size bir varsayılan araç çubuğu sağlar. Uygulamanızda birden fazla araç çubuğuna ihtiyacınız varsa, kodunuzu varsayılan araç çubuğu için sihirbaz tarafından oluşturulan koda göre ek araç çubukları için modelleyebilirsiniz.
Bir komutun sonucu olarak bir araç çubuğu görüntülemek istiyorsanız şunları yapmanız gerekir:
Araç çubuğu düzenleyicisiyle yeni bir araç çubuğu kaynağı oluşturun ve LoadToolbar üye işleviyle yükleyin
OnCreate
.Ana çerçeve pencere sınıfınıza yeni bir CToolBar nesnesi ekleyin.
Araç çubuğunu takmak veya kaydırmak, stillerini ayarlamak vb. için uygun işlev çağrılarını
OnCreate
yapın.
Ne hakkında daha fazla bilgi edinmek istiyorsunuz?
MFC Araç Çubuğu Uygulaması (araç çubuklarıyla ilgili genel bakış bilgileri)
CToolBar ve CToolBarCtrl sınıfları