Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bit eşlemli düğmeler ve isteğe bağlı ayırıcılar içeren denetim çubukları.
Sözdizimi
class CToolBar : public CControlBar
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
CToolBar::CToolBar |
Bir CToolBar nesne oluşturur. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
CToolBar::CommandToIndex |
Verilen komut kimliğine sahip bir düğmenin dizinini döndürür. |
CToolBar::Create |
Windows araç çubuğunu oluşturur ve nesneye CToolBar ekler. |
CToolBar::CreateEx |
Katıştırılmış CToolBarCtrl nesne için ek stiller içeren bir CToolBar nesne oluşturur. |
CToolBar::GetButtonInfo |
Düğmenin kimliğini, stilini ve görüntü numarasını alır. |
CToolBar::GetButtonStyle |
Düğmenin stilini alır. |
CToolBar::GetButtonText |
Bir düğmede görünecek metni alır. |
CToolBar::GetItemID |
Verilen dizindeki bir düğmenin veya ayırıcının komut kimliğini döndürür. |
CToolBar::GetItemRect |
Belirtilen dizindeki öğenin görüntü dikdörtgenini alır. |
CToolBar::GetToolBarCtrl |
Temel alınan ortak denetime doğrudan erişime izin verir. |
CToolBar::LoadBitmap |
Bit eşlem düğmesi görüntüleri içeren bit eşlemi yükler. |
CToolBar::LoadToolBar |
Kaynak düzenleyicisiyle oluşturulan bir araç çubuğu kaynağını yükler. |
CToolBar::SetBitmap |
Bit eşlemli bir görüntü ayarlar. |
CToolBar::SetButtonInfo |
Düğmenin kimliğini, stilini ve görüntü numarasını ayarlar. |
CToolBar::SetButtons |
Düğme stillerini ve bit eşlem içindeki düğme görüntülerinin dizinini ayarlar. |
CToolBar::SetButtonStyle |
Düğmenin stilini ayarlar. |
CToolBar::SetButtonText |
Bir düğmede görünecek metni ayarlar. |
CToolBar::SetHeight |
Araç çubuğunun yüksekliğini ayarlar. |
CToolBar::SetSizes |
Düğmelerin ve bit eşlemlerinin boyutlarını ayarlar. |
Açıklamalar
Düğmeler basma düğmeleri, onay kutusu düğmeleri veya radyo düğmeleri gibi hareket edebilir. CToolBarnesneleri genellikle veya CMDIFrameWndsınıfından CFrameWnd türetilen çerçeve penceresi nesnelerinin katıştırılmış üyeleridir.
CToolBar::GetToolBarCtrl, MFC 4.0'a yeni eklenen bir üye işlevi, Windows ortak denetiminin araç çubuğu özelleştirme ve ek işlevsellik desteğinden yararlanmanızı sağlar. CToolBar üye işlevleri, Windows ortak denetimlerinin işlevlerinin çoğunu sağlar; ancak çağırdığınızda GetToolBarCtrl, araç çubuklarınıza Windows 95/98 araç çubuklarının özelliklerinden daha da fazlasını verebilirsiniz. çağırdığınızda GetToolBarCtrl, bir CToolBarCtrl nesneye başvuru döndürür. Windows ortak denetimlerini kullanarak araç çubukları tasarlama hakkında daha fazla bilgi için bkz CToolBarCtrl . Yaygın denetimler hakkında daha fazla genel bilgi için bkz . Windows SDK'sında Ortak Denetimler .
Visual C++ araç çubuğu oluşturmak için size iki yöntem sağlar. Kaynak Düzenleyicisi'ni kullanarak araç çubuğu kaynağı oluşturmak için şu adımları izleyin:
Araç çubuğu kaynağı oluşturun.
Nesnesini oluşturma
CToolBar.CreateWindows araç çubuğunu oluşturmak ve nesneye eklemek için (veyaCreateEx) işlevini çağırınCToolBar.Araç çubuğu kaynağını yüklemek için çağrısı
LoadToolBar.
Aksi takdirde şu adımları izleyin:
Nesnesini oluşturma
CToolBar.CreateWindows araç çubuğunu oluşturmak ve nesneye eklemek için (veyaCreateEx) işlevini çağırınCToolBar.Araç çubuğu düğme görüntülerini içeren bit eşlemi yüklemek için çağrısı
LoadBitmap.Düğme stilini ayarlamak ve her düğmeyi bit eşlemdeki bir resimle ilişkilendirmek için çağırın
SetButtons.
Araç çubuğundaki tüm düğme görüntüleri, her düğme için bir resim içermesi gereken bir bit eşlemden alınır. Tüm görüntüler aynı boyutta olmalıdır; varsayılan değer 16 piksel genişliğinde ve 15 piksel yüksekliğindedir. Görüntüler bit eşlem içinde yan yana olmalıdır.
İşlev, SetButtons denetim kimlikleri dizisine bir işaretçi ve dizideki öğe sayısını belirten bir tamsayı alır. İşlev, her düğmenin kimliğini dizinin ilgili öğesinin değerine ayarlar ve her düğmeye bit eşlemdeki düğme görüntüsünün konumunu belirten bir görüntü dizini atar. Bir dizi öğesi değerine ID_SEPARATORsahipse, hiçbir görüntü dizini atanmamış olur.
Bit eşlemdeki görüntülerin sırası genellikle ekranda çizildiği sıradır, ancak görüntü sırası ile çizim sırası arasındaki ilişkiyi değiştirmek için işlevini kullanabilirsiniz SetButtonInfo .
Araç çubuğundaki tüm düğmeler aynı boyuttadır. Yazılım Tasarımı için Windows Arabirimi Yönergeleri'ne uygun olarak varsayılan değer 24 x 22 pikseldir. Resim ve düğme boyutları arasındaki tüm ek boşluklar, resmin çevresinde bir kenarlık oluşturmak için kullanılır.
Her düğmenin bir resmi vardır. Bu görüntüden çeşitli düğme durumları ve stilleri (basılı, yukarı, aşağı, devre dışı, devre dışı bırakılmış ve belirsiz) oluşturulur. Bit eşlemler herhangi bir renk olsa da, siyah ve gri tonlarındaki görüntülerle en iyi sonuçları elde edebilirsiniz.
Uyarı
CToolBar en fazla 16 renk içeren bit eşlemleri destekler. Bir görüntüyü bir araç çubuğu düzenleyicisine yüklediğinizde, Visual Studio gerekirse görüntüyü otomatik olarak 16 renkli bit eşlem haline dönüştürür ve görüntü dönüştürüldüyse bir uyarı iletisi görüntüler. 16'dan fazla renk içeren bir görüntü kullanıyorsanız (resmi düzenlemek için bir dış düzenleyici kullanarak), uygulama beklenmedik şekilde davranabilir.
Araç çubuğu düğmeleri varsayılan olarak basma düğmelerini taklit eder. Ancak, araç çubuğu düğmeleri onay kutusu düğmelerini veya radyo düğmelerini de taklit edebilir. Onay kutusu düğmelerinin üç durumu vardır: işaretli, temizlenmiş ve belirsiz. Radyo düğmelerinin yalnızca iki durumu vardır: işaretli ve temizlenmiş.
Bir diziye işaret etmeden tek bir düğme veya ayırıcı stil ayarlamak için, stili almak için öğesini çağırın GetButtonStyle ve yerine öğesini çağırın SetButtonStyle SetButtons. SetButtonStyle en çok, çalışma zamanında düğmenin stilini değiştirmek istediğinizde kullanışlıdır.
Bir düğmede görüntülenecek metin atamak için, düğmede görüntülenecek metni almak için öğesini GetButtonText arayın ve sonra da metni ayarlamak için arayın SetButtonText .
Onay kutusu düğmesi oluşturmak için stili atayın TBBS_CHECKBOX veya işleyicide ON_UPDATE_COMMAND_UI nesnenin CCmdUI SetCheck üye işlevini kullanın. Arama SetCheck , bir düğmeyi onay kutusu düğmesine dönüştürür. İşaretlenmemiş için 0, işaretli için 1 veya belirsiz için 2 bağımsız değişkenini geçirin SetCheck .
Radyo düğmesi oluşturmak için bir işleyiciden nesnenin SetRadio üye işlevini çağırabilirsiniz.CCmdUI ON_UPDATE_COMMAND_UI İşaretlenmemiş veya işaretlenmemiş için 0 bağımsız değişkenini geçirin SetRadio . Bir radyo grubunun birbirini dışlayan davranışını sağlamak için gruptaki tüm düğmelerin işleyicilerine sahip ON_UPDATE_COMMAND_UI olmanız gerekir.
kullanma CToolBarhakkında daha fazla bilgi için MFC Araç Çubuğu Uygulaması ve Teknik Not 31: Denetim Çubukları makalesine bakın.
Devralma Hiyerarşisi
CToolBar
Gereksinimler
Üstbilgi: afxext.h
CToolBar::CommandToIndex
Bu üye işlevi, komut kimliği ile eşleşen nIDFind0 konumundan başlayarak ilk araç çubuğu düğmesinin dizinini döndürür.
int CommandToIndex(UINT nIDFind) const;
Parametreler
nIDFind
Araç çubuğu düğmesinin komut kimliği.
Dönüş Değeri
Düğmenin dizini veya verilen komut kimliğine sahip düğme yoksa -1.
CToolBar::Create
Bu üye işlevi bir Windows araç çubuğu (alt pencere) oluşturur ve bunu nesnesiyle CToolBar ilişkilendirir.
virtual BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP,
UINT nID = AFX_IDW_TOOLBAR);
Parametreler
pParentWnd
Araç çubuğunun üst öğesi olan pencerenin işaretçisi.
dwStyle
Araç çubuğu stili. Desteklenen ek araç çubuğu stilleri şunlardır:
CBRS_TOPDenetim çubuğu çerçeve penceresinin en üstündedir.CBRS_BOTTOMDenetim çubuğu çerçeve penceresinin en altındadır.CBRS_NOALIGNÜst öğe yeniden boyutlandırıldığında denetim çubuğu yeniden konumlandırılamaz.CBRS_TOOLTIPSDenetim çubuğunda araç ipuçları görüntülenir.CBRS_SIZE_DYNAMICDenetim çubuğu dinamiktir.CBRS_SIZE_FIXEDDenetim çubuğu sabittir.CBRS_FLOATINGDenetim çubuğu kayan.CBRS_FLYBYDurum çubuğunda düğmeyle ilgili bilgiler görüntülenir.CBRS_HIDE_INPLACEDenetim çubuğu kullanıcıya görüntülenmez.
nID
Araç çubuğunun alt pencere kimliği.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Ayrıca araç çubuğu yüksekliğini varsayılan bir değere ayarlar.
Örnek
// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.
//This example creates a dockable toolbar.
if (!m_wndToolBar.Create(this) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//Make the toolbar dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);
CToolBar::CreateEx
Bir Windows araç çubuğu (alt pencere) oluşturmak ve nesneyle ilişkilendirmek için bu işlevi çağırın CToolBar .
virtual BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle = TBSTYLE_FLAT,
DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP,
CRect rcBorders = CRect(
0,
0,
0,
0),
UINT nID = AFX_IDW_TOOLBAR);
Parametreler
pParentWnd
Araç çubuğunun üst öğesi olan pencerenin işaretçisi.
dwCtrlStyle
Ekli CToolBarCtrl nesnenin oluşturulması için ek stiller. Varsayılan olarak, bu değer olarak TBSTYLE_FLATayarlanır. Araç çubuğu stillerinin tam listesi için bkz dwStyle. .
dwStyle
Araç çubuğu stili. Uygun stillerin listesi için bkz . Windows SDK'sında Araç Çubuğu Denetimi ve Düğme Stilleri .
rcBorders
CRect Araç çubuğu pencere kenarlıklarının genişliklerini tanımlayan nesne. Bu kenarlıklar varsayılan olarak 0,0,0,0 olarak ayarlanır ve böylece kenarlıksız bir araç çubuğu penceresi elde edilir.
nID
Araç çubuğunun alt pencere kimliği.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Ayrıca araç çubuğu yüksekliğini varsayılan bir değere ayarlar.
CreateExKatıştırılmış araç çubuğu denetiminin oluşturulması sırasında belirli stillerin mevcut olması gerektiğinde, yerine Createkullanın. Örneğin, Internet Explorer 4 araç çubuklarına benzeyen bir araç çubuğu oluşturmak için olarak ayarlayın dwCtrlStyle TBSTYLE_FLAT | TBSTYLE_TRANSPARENT .
Örnek
// This example demonstrates CToolBar::CreateEx by creating a
// toolbar as part of a child frame window. It also calls the
// LoadToolbar and EnableDocking functions
int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
return -1;
if (!m_wndMyToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndMyToolBar.LoadToolBar(IDR_MYTOOLBAR))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
m_wndMyToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMyToolBar);
return 0;
}
CToolBar::CToolBar
Bu üye işlevi bir CToolBar nesne oluşturur ve varsayılan boyutları ayarlar.
CToolBar();
Açıklamalar
Create Araç çubuğu penceresini oluşturmak için üye işlevini çağırın.
CToolBar::GetButtonInfo
Bu üye işlevi tarafından belirtilen nIndexkonumda araç çubuğu düğmesinin veya ayırıcının denetim kimliğini, stilini ve görüntü dizinini alır.
void GetButtonInfo(
int nIndex,
UINT& nID,
UINT& nStyle,
int& iImage) const;
Parametreler
nIndex
Bilgileri alınacak araç çubuğu düğmesinin veya ayırıcısının dizini.
nID
Düğmenin komut kimliğine ayarlanmış bir UINT başvurusu.
nStyle
Düğmenin stiline ayarlanmış bir UINT başvurusu.
iImage
Bit eşlem içindeki düğme görüntüsünün dizinine ayarlanmış bir tamsayıya başvuru.
Açıklamalar
Bu değerler , nStyleve iImagetarafından nIDbaşvuruda bulunan değişkenlere atanır. Görüntü dizini, tüm araç çubuğu düğmelerinin görüntülerini içeren bit eşlem içindeki görüntünün konumudur. İlk görüntü 0 konumundadır.
Bir ayırıcı belirtirse nIndex , iImage piksel cinsinden ayırıcı genişliğine ayarlanır.
CToolBar::GetButtonStyle
Araç çubuğundaki bir düğmenin veya ayırıcının stilini almak için bu üye işlevini çağırın.
UINT GetButtonStyle(int nIndex) const;
Parametreler
nIndex
Alınacak araç çubuğu düğmesinin veya ayırıcı stilinin dizini.
Dönüş Değeri
tarafından nIndexbelirtilen düğme veya ayırıcının stili.
Açıklamalar
Düğmenin stili, düğmenin nasıl görüneceğini ve kullanıcı girişine nasıl yanıt vereceğini belirler. Düğme stilleri örnekleri için bkz SetButtonStyle .
CToolBar::GetButtonText
Bir düğmede görüntülenen metni almak için bu üye işlevini çağırın.
CString GetButtonText(int nIndex) const;
void GetButtonText(
int nIndex,
CString& rString) const;
Parametreler
nIndex
Alınacak metnin dizini.
rString
Alınacak metni içeren bir CString nesneye başvuru.
Dönüş Değeri
CString Düğme metnini içeren bir nesne.
Açıklamalar
Bu üye işlevinin ikinci biçimi bir CString nesneyi dize metniyle doldurur.
CToolBar::GetItemID
Bu üye işlevi, tarafından nIndexbelirtilen düğmenin veya ayırıcının komut kimliğini döndürür.
UINT GetItemID(int nIndex) const;
Parametreler
nIndex
Kimliği alınacak öğenin dizini.
Dönüş Değeri
tarafından nIndexbelirtilen düğmenin veya ayırıcının komut kimliği.
Açıklamalar
Ayırıcılar döndürür ID_SEPARATOR.
CToolBar::GetItemRect
Bu üye işlevi, adresi içinde lpRect yer alan yapıyı RECT tarafından nIndexbelirtilen düğmenin veya ayırıcının koordinatlarıyla doldurur.
virtual void GetItemRect(
int nIndex,
LPRECT lpRect) const;
Parametreler
nIndex
Dikdörtgen koordinatları alınacak öğenin (düğme veya ayırıcı) dizini.
lpRect
RECT Öğenin koordinatlarını içerecek yapının adresi.
Açıklamalar
Koordinatlar, araç çubuğunun sol üst köşesine göre piksel cinsindendir.
Birleşik giriş kutusu veya başka bir denetimle değiştirmek istediğiniz ayırıcının koordinatlarını almak için kullanın GetItemRect .
Örnek
örneğine CToolBar::SetSizesbakın.
CToolBar::GetToolBarCtrl
Bu üye işlevi, temel alınan ortak denetime doğrudan erişim sağlar.
CToolBarCtrl& GetToolBarCtrl() const;
Dönüş Değeri
Bir nesneye CToolBarCtrl başvuru.
Açıklamalar
Windows araç çubuğu ortak denetiminin işlevselliğinden yararlanmak ve araç çubuğu özelleştirme desteğinden CToolBarCtrl yararlanmak için kullanınGetToolBarCtrl.
Ortak denetimleri kullanma hakkında daha fazla bilgi için Windows SDK'sında Denetimler ve Ortak Denetimler makalesine bakın.
Örnek
// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.
//This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
| CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));
CRect temp;
m_wndToolBar.GetItemRect(0, &temp);
m_wndToolBar.GetToolBarCtrl().SetButtonSize(CSize(temp.Width(),
temp.Height()));
CToolBar::LoadBitmap
veya nIDResourcetarafından lpszResourceName belirtilen bit eşlemi yüklemek için bu üye işlevini çağırın.
BOOL LoadBitmap(LPCTSTR lpszResourceName);
BOOL LoadBitmap(UINT nIDResource);
Parametreler
lpszResourceName
Yüklenecek bit eşlemin kaynak adına işaret eden işaretçi.
nIDResource
Yüklenecek bit eşlemin kaynak kimliği.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bit eşlem, her araç çubuğu düğmesi için bir resim içermelidir. Görüntüler standart boyutta değilse (16 piksel genişliğinde ve 15 piksel yüksekliğinde), düğme boyutlarını ve resimlerini ayarlamak için arayın SetSizes .
Uyarı
CToolBar en fazla 16 renk içeren bit eşlemleri destekler. Bir görüntüyü bir araç çubuğu düzenleyicisine yüklediğinizde, Visual Studio gerekirse görüntüyü otomatik olarak 16 renkli bit eşlem haline dönüştürür ve görüntü dönüştürüldüyse bir uyarı iletisi görüntüler. 16'dan fazla renk içeren bir görüntü kullanıyorsanız (resmi düzenlemek için bir dış düzenleyici kullanarak), uygulama beklenmedik şekilde davranabilir.
CToolBar::LoadToolBar
veya nIDResourcetarafından lpszResourceName belirtilen araç çubuğunu yüklemek için bu üye işlevini çağırın.
BOOL LoadToolBar(LPCTSTR lpszResourceName);
BOOL LoadToolBar(UINT nIDResource);
Parametreler
lpszResourceName
Yüklenecek araç çubuğunun kaynak adına işaret eden işaretçi.
nIDResource
Yüklenecek araç çubuğunun kaynak kimliği.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Araç çubuğu kaynağı oluşturma hakkında daha fazla bilgi için içindeki araç çubuğu düzenleyicisine bakın.
Örnek
örneğine CToolBar::CreateExbakın.
CToolBar::SetBitmap
Araç çubuğunun bit eşlem görüntüsünü ayarlamak için bu üye işlevini çağırın.
BOOL SetBitmap(HBITMAP hbmImageWell);
Parametreler
hbmImageWell
Araç çubuğuyla ilişkili bit eşlem görüntüsünün tutamacı.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Örneğin, kullanıcı bir düğmenin eylemini değiştiren bir belge üzerinde eylemde bulunduktan sonra bit eşlemlenmiş görüntüyü değiştirmek için çağrısı SetBitmap yapın.
CToolBar::SetButtonInfo
Düğmenin komut kimliğini, stilini ve görüntü numarasını ayarlamak için bu üye işlevini çağırın.
void SetButtonInfo(
int nIndex,
UINT nID,
UINT nStyle,
int iImage);
Parametreler
nIndex
Bilgilerin ayarlanacağı düğme veya ayırıcının sıfır tabanlı dizini.
nID
Düğmenin komut kimliğinin ayarlandığı değer.
nStyle
Yeni düğme stili. Aşağıdaki düğme stilleri desteklenir:
TBBS_BUTTONStandart basma düğmesi (varsayılan)TBBS_SEPARATORAyırıcıTBBS_CHECKBOXOtomatik onay kutusu düğmesiTBBS_GROUPBir düğme grubunun başlangıcını işaretlerTBBS_CHECKGROUPOnay kutusu düğmeleri grubunun başlangıcını işaretlerTBBS_DROPDOWNAçılan liste düğmesi oluşturur.TBBS_AUTOSIZEDüğmenin genişliği, resmin boyutuna göre değil, düğmenin metnine göre hesaplanır.TBBS_NOPREFIXDüğme metniyle ilişkilendirilmiş bir hızlandırıcı ön eki yoktur.
iImage
Bit eşlem içindeki düğme görüntüsü için yeni dizin.
Açıklamalar
stiline TBBS_SEPARATORsahip ayırıcılar için, bu işlev ayırıcının genişliğini piksel cinsinden içinde iImagedepolanan değere ayarlar.
Not
Parametresini nStyle kullanarak düğme durumları da ayarlayabilirsiniz; ancak düğme durumları işleyici tarafından ON_UPDATE_COMMAND_UI denetlendiğinden, bir sonraki boşta işlem sırasında kullanarak SetButtonInfo ayarladığınız tüm durumlar kaybolur. Daha fazla bilgi için bkz . Kullanıcı Arabirimi Nesnelerini ve TN031: Denetim Çubuklarını Güncelleştirme.
Bit eşlem görüntüleri ve düğmeleri hakkında bilgi için genel bakış ve CToolBar::LoadBitmapbölümüne bakınCToolBar.
CToolBar::SetButtons
Bu üye işlevi, her araç çubuğu düğmesinin komut kimliğini dizinin lpIDArraykarşılık gelen öğesi tarafından belirtilen değere ayarlar.
BOOL SetButtons(
const UINT* lpIDArray,
int nIDCount);
Parametreler
lpIDArray
Bir komut kimliği dizisi işaretçisi. Boş düğmeleri ayırmak NULL olabilir.
nIDCount
dizininde tarafından lpIDArrayişaret edilen öğe sayısı.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Dizinin bir öğesi değerine ID_SEPARATORsahipse, araç çubuğunun karşılık gelen konumunda bir ayırıcı oluşturulur. Bu işlev ayrıca her düğmenin stilini TBBS_BUTTON ve her ayırıcının stilini olarak TBBS_SEPARATORayarlar ve her düğmeye bir görüntü dizini atar. Görüntü dizini, düğme görüntüsünün bit eşlem içindeki konumunu belirtir.
Bu işlev ayırıcılar için görüntü dizinleri atamadığından bit eşlemdeki ayırıcıları hesaba eklemeniz gerekmez. Araç çubuğunuz 0, 1 ve 3 konumlarında düğmelere ve 2. konumda ayırıcıya sahipse bit eşleminizde 0, 1 ve 2 konumlarındaki görüntüler sırasıyla 0, 1 ve 3 konumlarındaki düğmelere atanır.
NULL ise lpIDArray , bu işlev tarafından nIDCountbelirtilen öğe sayısı için alan ayırır. Her öğenin özniteliklerini ayarlamak için kullanın SetButtonInfo .
CToolBar::SetButtonStyle
Düğmenin veya ayırıcının stilini ayarlamak veya düğmeleri gruplandırmak için bu üye işlevini çağırın.
void SetButtonStyle(
int nIndex,
UINT nStyle);
Parametreler
nIndex
Bilgileri ayarlanacak düğmenin veya ayırıcının dizini.
nStyle
Düğme stili. Aşağıdaki düğme stilleri desteklenir:
TBBS_BUTTONStandart basma düğmesi (varsayılan)TBBS_SEPARATORAyırıcıTBBS_CHECKBOXOtomatik onay kutusu düğmesiTBBS_GROUPBir düğme grubunun başlangıcını işaretlerTBBS_CHECKGROUPOnay kutusu düğmeleri grubunun başlangıcını işaretlerTBBS_DROPDOWNAçılan liste düğmesi oluştururTBBS_AUTOSIZEDüğmenin genişliği, resmin boyutuna göre değil, düğmenin metnine göre hesaplanırTBBS_NOPREFIXDüğme metninin kendisiyle ilişkilendirilmiş bir hızlandırıcı ön eki olmaz
Açıklamalar
Düğmenin stili, düğmenin nasıl görüneceğini ve kullanıcı girişine nasıl yanıt vereceğini belirler.
çağrısından SetButtonStyleönce, düğmeyi GetButtonStyle veya ayırıcı stilini almak için üye işlevini çağırın.
Not
Parametresini nStyle kullanarak düğme durumları da ayarlayabilirsiniz; ancak düğme durumları işleyici tarafından ON_UPDATE_COMMAND_UI denetlendiğinden, bir sonraki boşta işlem sırasında kullanarak SetButtonStyle ayarladığınız tüm durumlar kaybolur. Daha fazla bilgi için bkz . Kullanıcı Arabirimi Nesnelerini ve TN031: Denetim Çubuklarını Güncelleştirme.
CToolBar::SetButtonText
Düğmedeki metni ayarlamak için bu işlevi çağırın.
BOOL SetButtonText(
int nIndex,
LPCTSTR lpszText);
Parametreler
nIndex
Metni ayarlanacak düğmenin dizini.
lpszText
Düğmede ayarlanacak metni gösterir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Örnek
örneğine CToolBar::GetToolBarCtrlbakın.
CToolBar::SetHeight
Bu üye işlevi, araç çubuğunun yüksekliğini içinde cyHeightbelirtilen piksel cinsinden değerine ayarlar.
void SetHeight(int cyHeight);
Parametreler
cyHeight
Araç çubuğunun piksel cinsinden yüksekliği.
Açıklamalar
çağrısı SetSizesyaptıktan sonra, standart araç çubuğu yüksekliğini geçersiz kılmak için bu üye işlevini kullanın. Yükseklik çok küçükse düğmeler alttan kırpılır.
Bu işlev çağrılmazsa, çerçeve araç çubuğu yüksekliğini belirlemek için düğmenin boyutunu kullanır.
CToolBar::SetSizes
Araç çubuğunun düğmelerini içinde sizeButtonbelirtilen piksel cinsinden boyuta ayarlamak için bu üye işlevini çağırın.
void SetSizes(
SIZE sizeButton,
SIZE sizeImage);
Parametreler
sizeButton
Her düğmenin piksel cinsinden boyutu.
sizeImage
Her görüntünün piksel cinsinden boyutu.
Açıklamalar
sizeImage parametresi, araç çubuğunun bit eşlemindeki görüntülerin boyutunu piksel cinsinden içermelidir. içindeki sizeButton boyutların, resmin 7 piksel ek genişlikte ve 6 piksel ekstra yüksekliğinde tutulması için yeterli olması gerekir. Bu işlev ayrıca araç çubuğunun yüksekliğini düğmelere uyacak şekilde ayarlar.
Bu üye işlevini yalnızca düğme ve görüntü boyutları için Yazılım Tasarımı için Windows Arabirim Yönergeleri önerilerini izlemeyen araç çubukları için çağırabilirsiniz.
Örnek
// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd
// This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
| CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n");
return -1; // fail to create
}
//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));
CRect temp;
m_wndToolBar.GetItemRect(0,&temp);
m_wndToolBar.SetSizes(CSize(temp.Width(),
temp.Height()),CSize(16,15));
Ayrıca bkz.
MFC Örneği CTRLBARS
MFC Örneği DLGCBR32
MFC Örneği DOCKTOOL
CControlBar Sınıf
Hiyerarşi Grafiği
CToolBarCtrl Sınıf