Aracılığıyla paylaş


CCmdUI Sınıfı

Yalnızca türetilmiş bir ON_UPDATE_COMMAND_UI sınıftaki bir CCmdTargetişleyici içinde kullanılır.

Sözdizimi

class CCmdUI

Üyeler

Genel Yöntemler

Veri Akışı Adı Açıklama
CCmdUI::ContinueRouting Komut yönlendirme mekanizmasına geçerli iletiyi işleyiciler zincirine yönlendirmeye devam edeceğini bildirir.
CCmdUI::Enable Bu komut için kullanıcı arabirimi öğesini etkinleştirir veya devre dışı bırakır.
CCmdUI::SetCheck Bu komut için kullanıcı arabirimi öğesinin denetim durumunu ayarlar.
CCmdUI::SetRadio SetCheck Üye işlevi gibi, ancak radyo gruplarında çalışır.
CCmdUI::SetText Bu komut için kullanıcı arabirimi öğesinin metnini ayarlar.

Ortak Veri Üyeleri

Veri Akışı Adı Açıklama
CCmdUI::m_nID Kullanıcı arabirimi nesnesinin kimliği.
CCmdUI::m_nIndex Kullanıcı arabirimi nesnesinin dizini.
CCmdUI::m_pMenu Nesne tarafından temsil edilen menüyü CCmdUI gösterir.
CCmdUI::m_pOther Bildirimi gönderen pencere nesnesini gösterir.
CCmdUI::m_pSubMenu Nesne tarafından temsil edilen kapsanan alt menüyü CCmdUI gösterir.

Açıklamalar

CCmdUI temel sınıfına sahip değildir.

Uygulamanızın bir kullanıcısı menüyü aşağı çektiğinde, her menü öğesinin etkin olarak mı yoksa devre dışı olarak mı görüntüleneceğini bilmesi gerekir. Menü komutunun hedefi, bir ON_UPDATE_COMMAND_UI işleyicisi uygulayarak bu bilgileri sağlar. Uygulamanızdaki komut kullanıcı arabirimi nesnelerinin her biri için, her işleyici için bir ileti eşleme girdisi ve işlev prototipi oluşturmak için Sınıf Sihirbazı'nı veya Özellikler penceresini (Sınıf Görünümünde) kullanın.

Menü aşağı çekildiğinde, çerçeve her ON_UPDATE_COMMAND_UI işleyicisini arar ve çağırır, her işleyici ve Checkgibi Enable üye işlevlerini çağırır CCmdUI ve ardından çerçeve her menü öğesini uygun şekilde görüntüler.

Bir menü öğesi, işleyici içindeki ON_UPDATE_COMMAND_UI kodu değiştirmeden bir denetim çubuğu düğmesi veya başka bir komut kullanıcı arabirimi nesnesiyle değiştirilebilir.

Aşağıdaki tabloda üye işlevlerinin çeşitli komut kullanıcı arabirimi öğeleri üzerindeki etkisi CCmdUIözetlenmiştir.

Kullanıcı Arabirimi Öğesi Etkinleştir SetCheck SetRadio SetText
Menü Öğesi Etkinleştirir veya devre dışı bırakır Denetimler veya işaretlerini kaldırma Nokta kullanarak denetimler Öğe metnini ayarlar
Araç Çubuğu düğmesi Etkinleştirir veya devre dışı bırakır Seçer, seçimini kaldırır veya belirsiz Aynı SetCheck (Uygulanamaz)
Durum çubuğu bölmesi Metni görünür veya görünmez yapar Açılır veya normal kenarlık ayarlar Aynı SetCheck Bölme metnini ayarlar
normal düğmesi CDialogBar Etkinleştirir veya devre dışı bırakır Onay kutusunu denetler veya işaretini kaldırır Aynı SetCheck Ayarlar düğmesi metni
içinde normal denetim CDialogBar Etkinleştirir veya devre dışı bırakır (Uygulanamaz) (Uygulanamaz) Pencere metnini ayarlar

Bu sınıfın kullanımı hakkında daha fazla bilgi için bkz . Kullanıcı Arabirimi Nesnelerini Güncelleştirme.

Devralma Hiyerarşisi

CCmdUI

Gereksinimler

Üst bilgi: afxwin.h

CCmdUI::ContinueRouting

Komut yönlendirme mekanizmasına geçerli iletiyi işleyiciler zincirine yönlendirmeye devam etmesi için bu üye işlevini çağırın.

void ContinueRouting();

Açıklamalar

Bu, FALSE döndüren bir ON_COMMAND_EX işleyicisi ile birlikte kullanılması gereken gelişmiş bir üye işlevidir. Daha fazla bilgi için bkz . Teknik Not 6.

CCmdUI::Enable

Bu komut için kullanıcı arabirimi öğesini etkinleştirmek veya devre dışı bırakmak için bu üye işlevini çağırın.

virtual void Enable(BOOL bOn = TRUE);

Parametreler

Bon
Öğeyi etkinleştirmek için TRUE, devre dışı bırakmak için YANLIŞ.

Örnek

ON_UPDATE_COMMAND_UI(ID_FILE_SAVE, &CMyDoc::OnUpdateFileSave)

 

void CMyDoc::OnUpdateFileSave(CCmdUI *pCmdUI)
{
   // Enable the menu item if the file has been modified.
   pCmdUI->Enable(m_bModified);
}

CCmdUI::m_nID

Nesne tarafından temsil edilen menü öğesinin, araç çubuğu düğmesinin veya diğer kullanıcı arabirimi nesnesinin CCmdUI kimliği.

UINT m_nID;

CCmdUI::m_nIndex

Menü öğesinin, araç çubuğu düğmesinin veya nesne tarafından temsil edilen diğer kullanıcı arabirimi nesnesinin CCmdUI dizini.

UINT m_nIndex;

CCmdUI::m_pMenu

Nesne tarafından CMenu temsil edilen menüye işaretçi (türü).CCmdUI

CMenu* m_pMenu;

Açıklamalar

Öğe bir menü değilse NULL.

CCmdUI::m_pSubMenu

Nesne tarafından CMenu temsil edilen kapsanan alt menünün işaretçisi (türü).CCmdUI

CMenu* m_pSubMenu;

Açıklamalar

Öğe bir menü değilse NULL. Alt menü bir açılır menüyse, m_nID açılır menüdeki ilk öğenin kimliğini içerir. Daha fazla bilgi için bkz . Teknik Not 21.

CCmdUI::m_pOther

Bildirimi gönderen araç veya durum çubuğu gibi pencere nesnesine işaretçi (türünde CWnd).

CWnd* m_pOther;

Açıklamalar

Öğe bir menüyse veya nesne değilse CWnd NULL.

CCmdUI::SetCheck

Bu komutun kullanıcı arabirimi öğesini uygun denetim durumuna ayarlamak için bu üye işlevini çağırın.

virtual void SetCheck(int nCheck = 1);

Parametreler

nCheck
Ayarlanacağı denetim durumunu belirtir. 0 ise, işaretini kaldırır; 1 ise, denetler; ve 2 ise, belirsiz ayarlar.

Açıklamalar

Bu üye işlevi, menü öğeleri ve araç çubuğu düğmeleri için çalışır. Belirsiz durum yalnızca araç çubuğu düğmeleri için geçerlidir.

CCmdUI::SetRadio

Bu komutun kullanıcı arabirimi öğesini uygun denetim durumuna ayarlamak için bu üye işlevini çağırın.

virtual void SetRadio(BOOL bOn = TRUE);

Parametreler

Bon
Öğeyi etkinleştirmek için TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Bu üye işlevi, bir radyo grubunun parçası olarak hareket eden kullanıcı arabirimi öğeleri üzerinde çalışması dışında gibi SetCheckçalışır. Öğelerin kendisi radyo grubu davranışını korumadığı sürece gruptaki diğer öğelerin işaretini kaldırmak otomatik değildir.

CCmdUI::SetText

Bu komutun kullanıcı arabirimi öğesinin metnini ayarlamak için bu üye işlevini çağırın.

virtual void SetText(LPCTSTR lpszText);

Parametreler

lpszText
Metin dizesi işaretçisi.

Örnek

void CMyRichEditView::OnUpdateLineNumber(CCmdUI *pCmdUI)
{
   int nLine = GetRichEditCtrl().LineFromChar(-1) + 1;

   CString string;
   string.Format(_T("Line %d"), nLine);
   pCmdUI->Enable(TRUE);
   pCmdUI->SetText(string);
}

Ayrıca bkz.

MFC Örnek MDI
Hiyerarşi Grafiği
CCmdTarget Sınıfı