CToolBar
Sınıf
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. CToolBar
nesneleri genellikle veya CMDIFrameWnd
sı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
.Create
Windows 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
.Create
Windows 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_SEPARATOR
sahipse, 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 CToolBar
hakkı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 nIDFind
0 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_TOP
Denetim çubuğu çerçeve penceresinin en üstündedir.CBRS_BOTTOM
Denetim ç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_TOOLTIPS
Denetim çubuğunda araç ipuçları görüntülenir.CBRS_SIZE_DYNAMIC
Denetim çubuğu dinamiktir.CBRS_SIZE_FIXED
Denetim çubuğu sabittir.CBRS_FLOATING
Denetim çubuğu kayan.CBRS_FLYBY
Durum çubuğunda düğmeyle ilgili bilgiler görüntülenir.CBRS_HIDE_INPLACE
Denetim ç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_FLAT
ayarlanı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.
CreateEx
Katıştırılmış araç çubuğu denetiminin oluşturulması sırasında belirli stillerin mevcut olması gerektiğinde, yerine Create
kullanı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 nIndex
konumda 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 , nStyle
ve iImage
tarafından nID
baş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 nIndex
belirtilen 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 nIndex
belirtilen 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 nIndex
belirtilen 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 nIndex
belirtilen 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::SetSizes
bakı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 nIDResource
tarafı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 nIDResource
tarafı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::CreateEx
bakı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_BUTTON
Standart basma düğmesi (varsayılan)TBBS_SEPARATOR
AyırıcıTBBS_CHECKBOX
Otomatik onay kutusu düğmesiTBBS_GROUP
Bir düğme grubunun başlangıcını işaretlerTBBS_CHECKGROUP
Onay kutusu düğmeleri grubunun başlangıcını işaretlerTBBS_DROPDOWN
Açılan liste düğmesi oluşturur.TBBS_AUTOSIZE
Düğmenin genişliği, resmin boyutuna göre değil, düğmenin metnine göre hesaplanır.TBBS_NOPREFIX
Düğ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_SEPARATOR
sahip ayırıcılar için, bu işlev ayırıcının genişliğini piksel cinsinden içinde iImage
depolanan 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::LoadBitmap
bölümüne bakınCToolBar
.
CToolBar::SetButtons
Bu üye işlevi, her araç çubuğu düğmesinin komut kimliğini dizinin lpIDArray
karşı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 lpIDArray
iş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_SEPARATOR
sahipse, 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_SEPARATOR
ayarlar 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 nIDCount
belirtilen öğ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_BUTTON
Standart basma düğmesi (varsayılan)TBBS_SEPARATOR
AyırıcıTBBS_CHECKBOX
Otomatik onay kutusu düğmesiTBBS_GROUP
Bir düğme grubunun başlangıcını işaretlerTBBS_CHECKGROUP
Onay kutusu düğmeleri grubunun başlangıcını işaretlerTBBS_DROPDOWN
Açılan liste düğmesi oluştururTBBS_AUTOSIZE
Düğmenin genişliği, resmin boyutuna göre değil, düğmenin metnine göre hesaplanırTBBS_NOPREFIX
Düğ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::GetToolBarCtrl
bakın.
CToolBar::SetHeight
Bu üye işlevi, araç çubuğunun yüksekliğini içinde cyHeight
belirtilen piksel cinsinden değerine ayarlar.
void SetHeight(int cyHeight);
Parametreler
cyHeight
Araç çubuğunun piksel cinsinden yüksekliği.
Açıklamalar
çağrısı SetSizes
yaptı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 sizeButton
belirtilen 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