CUserToolsManager Sınıfı
Bir uygulamadaki CUserTool Sınıfı nesnelerinin koleksiyonunu korur. Kullanıcı aracı, dış uygulama çalıştıran bir menü öğesidir. CUserToolsManager
nesnesi, kullanıcının veya geliştiricinin uygulamaya yeni kullanıcı araçları eklemesine olanak tanır. Kullanıcı araçlarıyla ilişkili komutların yürütülmesini destekler ve ayrıca Windows kayıt defterine kullanıcı araçları hakkındaki bilgileri kaydeder.
Sözdizimi
class CUserToolsManager : public CObject
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CUserToolsManager::CUserToolsManager | bir CUserToolsManager oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CUserToolsManager::CreateNewTool | Yeni bir kullanıcı aracı oluşturur. |
CUserToolsManager::FindTool | İşaretçiyi CMFCUserTool , belirtilen komut kimliğiyle ilişkili nesneye döndürür. |
CUserToolsManager::GetArgumentsMenuID | Özelleştir iletişim kutusunun Araçlar sekmesindeki Bağımsız Değişkenler menüsüyle ilişkili kaynak kimliğini döndürür. |
CUserToolsManager::GetDefExt | Dosya Aç iletişim kutusunun ( CFileDialog) Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında kullandığı varsayılan uzantıyı döndürür. |
CUserToolsManager::GetFilter | Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında Dosya Aç iletişim kutusunun (CFileDialog Sınıfı) kullandığı dosya filtresini döndürür. |
CUserToolsManager::GetInitialDirMenuID | Özelleştir iletişim kutusunun Araçlar sekmesindeki başlangıç dizini menüsüyle ilişkili kaynak kimliğini döndürür. |
CUserToolsManager::GetMaxTools | Uygulamada ayrılabilecek en fazla kullanıcı aracı sayısını döndürür. |
CUserToolsManager::GetToolsEntryCmd | Kullanıcı araçları için menü öğesi yer tutucusunun komut kimliğini döndürür. |
CUserToolsManager::GetUserTools | Kullanıcı araçları listesine bir başvuru döndürür. |
CUserToolsManager::InvokeTool | Belirtilen komut kimliğine sahip kullanıcı aracıyla ilişkilendirilmiş bir uygulamayı yürütür. |
CUserToolsManager::IsUserToolCmd | Komut kimliğinin bir kullanıcı aracıyla ilişkilendirilip ilişkilendirileceğini belirler. |
CUserToolsManager::LoadState | Windows kayıt defterinden kullanıcı araçları hakkındaki bilgileri yükler. |
CUserToolsManager::MoveToolDown | Belirtilen kullanıcı aracını kullanıcı araçları listesinde aşağı taşır. |
CUserToolsManager::MoveToolUp | Belirtilen kullanıcı aracını kullanıcı araçları listesinde yukarı taşır. |
CUserToolsManager::RemoveTool | Belirtilen kullanıcı aracını uygulamadan kaldırır. |
CUserToolsManager::SaveState | Kullanıcı araçları hakkındaki bilgileri Windows kayıt defterinde depolar. |
CUserToolsManager::SetDefExt | Dosya Aç iletişim kutusunun (CFileDialog Sınıfı) Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında kullandığı varsayılan uzantıyı belirtir. |
CUserToolsManager::SetFilter | Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında Dosya Aç iletişim kutusunun (CFileDialog Sınıfı) kullandığı dosya filtresini belirtir. |
Açıklamalar
Uygulamanıza kullanıcı araçları eklemek için şunları yapmalısınız:
Kullanıcı aracı menü girdisi için bir menü öğesi ve ilişkili komut kimliği ayırın.
Bir kullanıcının uygulamanızda tanımlayabildiği her kullanıcı aracı için sıralı bir komut kimliği ayırın.
CWinAppEx::EnableUserTools yöntemini çağırın ve şu parametreleri sağlayın: menü komut kimliği, ilk kullanıcı aracı komut kimliği ve son kullanıcı aracı komut kimliği.
Uygulama başına yalnızca bir genel CUserToolsManager
nesne olmalıdır.
Kullanıcı araçları örneği için bkz. VisualStudioDemo örnek projesi.
Örnek
Aşağıdaki örnekte, bir CUserToolsManager
nesneye başvurunun nasıl alınacağı ve yeni kullanıcı araçlarının nasıl oluşturulacağı gösterilmektedir. Bu kod parçacığı Visual Studio Tanıtım örneğinin bir parçasıdır.
CUserToolsManager* pUserToolsManager = theApp.GetUserToolsManager();
if (pUserToolsManager != NULL && pUserToolsManager->GetUserTools().IsEmpty())
{
// CUserToolsManager* pUserToolsManager
CUserTool* pTool1 = pUserToolsManager->CreateNewTool();
pTool1->m_strLabel = _T("&Notepad");
pTool1->SetCommand(_T("notepad.exe"));
CUserTool* pTool2 = pUserToolsManager->CreateNewTool();
pTool2->m_strLabel = _T("Paint &Brush");
pTool2->SetCommand(_T("mspaint.exe"));
CUserTool* pTool3 = pUserToolsManager->CreateNewTool();
pTool3->m_strLabel = _T("&Windows Explorer");
pTool3->SetCommand(_T("explorer.exe"));
CUserTool* pTool4 = pUserToolsManager->CreateNewTool();
pTool4->m_strLabel = _T("Microsoft On-&Line");
pTool4->SetCommand(_T("http://www.microsoft.com"));
}
Devralma Hiyerarşisi
CUserToolsManager
Gereksinimler
Üst bilgi: afxusertoolsmanager.h
CUserToolsManager::CreateNewTool
Yeni bir kullanıcı aracı oluşturur.
CUserTool* CreateNewTool();
Dönüş Değeri
Yeni oluşturulan kullanıcı aracının işaretçisi veya kullanıcı araçlarının sayısı üst sınırı aştıysa NULL. Döndürülen tür, pToolRTC parametresi olarak geçirilen CWinAppEx::EnableUserTools
türle aynıdır.
Açıklamalar
Bu yöntem, CWinAppEx::EnableUserTools çağrısında sağlanan aralıktaki kullanılabilir ilk menü komut kimliğini bulur ve kullanıcı aracına bu kimliği atar.
Araç sayısı üst sınıra ulaştıysa yöntemi başarısız olur. Bu durum, aralıktaki tüm komut kimlikleri kullanıcı araçlarına atandığında oluşur. CUserToolsManager::GetMaxTools çağrısı yaparak en fazla araç sayısını alabilirsiniz. CUserToolsManager::GetUserTools yöntemini çağırarak araçlar listesine erişebilirsiniz.
CUserToolsManager::CUserToolsManager
bir CUserToolsManager
oluşturur. Her uygulamada en fazla bir kullanıcı araçları yöneticisi olmalıdır.
CUserToolsManager();
CUserToolsManager(
const UINT uiCmdToolsDummy,
const UINT uiCmdFirst,
const UINT uiCmdLast,
CRuntimeClass* pToolRTC=RUNTIME_CLASS(CUserTool),
UINT uArgMenuID=0,
UINT uInitDirMenuID=0);
Parametreler
uiCmdToolsDummy
[in] Çerçevenin kullanıcı araçları menüsünün komut kimliği için yer tutucu olarak kullandığı imzasız tamsayı.
uiCmdFirst
[in] İlk kullanıcı aracı komutunun komut kimliği.
uiCmdLast
[in] Son kullanıcı aracı komutunun komut kimliği.
pToolRTC
[in] CUserToolsManager::CreateNewTool'un oluşturduğu sınıf. Bu sınıfı kullanarak, varsayılan uygulama yerine türetilmiş bir CUserTool Sınıfı türü kullanabilirsiniz.
uArgMenuID
[in] Bağımsız değişkenlerin menü kaynak kimliği açılır menüsü.
uInitDirMenuID
[in] İlk dizin açılır menüsünün menü kaynak kimliği.
Açıklamalar
Bu oluşturucuyu çağırmayın. Bunun yerine, kullanıcı araçlarını etkinleştirmek için CWinAppEx::EnableUserTools'u çağırın ve CWinAppEx::GetUserToolsManager öğesini çağırarak öğesine bir işaretçi CUserToolsManager
alın. Daha fazla bilgi için bkz . Kullanıcı Tanımlı Araçlar.
CUserToolsManager::FindTool
İşaretçiyi , belirtilen bir komut kimliğiyle ilişkilendirilmiş CUserTool Sınıfı nesnesine döndürür.
CUserTool* FindTool(UINT uiCmdId) const;
Parametreler
uiCmdId
[in] Menü komut tanımlayıcısı.
Dönüş Değeri
Başarılı olursa CUserTool Sınıfına veya CUserTool
türetilmiş nesneye işaretçi; aksi takdirde NULL.
Açıklamalar
Başarılı olduğundaFindTool
, döndürülen tür CWinAppEx::EnableUserTools için pToolRTC parametresinin türüyle aynıdır.
CUserToolsManager::GetArgumentsMenuID
Özelleştir iletişim kutusunun Araçlar sekmesindeki Bağımsız Değişkenler menüsüyle ilişkili kaynak kimliğini döndürür.
UINT GetArgumentsMenuID() const;
Dönüş Değeri
Menü kaynağının tanımlayıcısı.
Açıklamalar
CWinAppEx::EnableUserTools'un uArgMenuID parametresi kaynağın kimliğini belirtir.
CUserToolsManager::GetDefExt
Dosya Aç iletişim kutusunun ( CFileDialog) Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında kullandığı varsayılan uzantıyı döndürür.
const CString& GetDefExt() const;
Dönüş Değeri
Uzantıyı CString
içeren nesneye başvuru.
CUserToolsManager::GetFilter
Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında Dosya Aç iletişim kutusunun (CFileDialog Sınıfı) kullandığı dosya filtresini döndürür.
const CString& GetFilter() const;
Dönüş Değeri
Filtreyi CString
içeren nesneye başvuru.
CUserToolsManager::GetInitialDirMenuID
Özelleştir iletişim kutusunun Araçlar sekmesindeki başlangıç dizini menüsüyle ilişkili kaynak kimliğini döndürür.
UINT GetInitialDirMenuID() const;
Dönüş Değeri
Menü kaynak tanımlayıcısı.
Açıklamalar
Döndürülen kimlik, CWinAppEx::EnableUserTools öğesinin uInitDirMenuID parametresinde belirtilir.
CUserToolsManager::GetMaxTools
Uygulamada ayrılabilecek en fazla kullanıcı aracı sayısını döndürür.
int GetMaxTools() const;
Dönüş Değeri
Ayrılabilecek en fazla kullanıcı aracı sayısı.
Açıklamalar
Uygulamada ayrılabilecek en fazla araç sayısını almak için bu yöntemi çağırın. Bu sayı, CWinAppEx::EnableUserTools'a geçirdiğiniz uiCmdLast parametreleri aracılığıyla uiCmdFirst aralığındaki kimliklerin sayısıdır.
CUserToolsManager::GetToolsEntryCmd
Kullanıcı araçları için menü öğesi yer tutucusunun komut kimliğini döndürür.
UINT GetToolsEntryCmd() const;
Dönüş Değeri
Yer tutucunun komut kimliği.
Açıklamalar
Kullanıcı araçlarını etkinleştirmek için CWinAppEx::EnableUserTools'u çağırırsınız. uiCmdToolsDummy parametresi, araçlar giriş komutunun komut kimliğini belirtir. Bu yöntem, araçlar girdisi komut kimliğini döndürür. Bu kimliğin bir menüde kullanıldığı her yerde, menü görüntülendiğinde kullanıcı araçları listesiyle değiştirilir.
CUserToolsManager::GetUserTools
Kullanıcı araçları listesine bir başvuru döndürür.
const CObList& GetUserTools() const;
Dönüş Değeri
Kullanıcı araçlarının listesini içeren bir CObList Sınıf nesnesine en yakın başvuru.
Açıklamalar
CUserToolsManager nesnesinin koruduğu kullanıcı araçlarının listesini almak için bu yöntemi çağırın. Her kullanıcı aracı, CUserTool Sınıfı türünde bir nesne veya öğesinden CUserTool
türetilen bir türle temsil edilir. Tür, kullanıcı araçlarını etkinleştirmek için CWinAppEx::EnableUserTools çağrısı yaptığınızda pToolRTC parametresi tarafından belirtilir.
CUserToolsManager::InvokeTool
Belirtilen komut kimliğine sahip kullanıcı aracıyla ilişkilendirilmiş bir uygulamayı yürütür.
BOOL InvokeTool(UINT uiCmdId);
Parametreler
uiCmdId
[in] Kullanıcı aracıyla ilişkilendirilmiş menü komut kimliği.
Dönüş Değeri
Kullanıcı aracıyla ilişkili komut başarıyla yürütüldüyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
uiCmdId tarafından belirtilen komut kimliğine sahip kullanıcı aracıyla ilişkilendirilmiş bir uygulamayı yürütmek için bu yöntemi çağırın.
CUserToolsManager::IsUserToolCmd
Komut kimliğinin bir kullanıcı aracıyla ilişkilendirilip ilişkilendirileceğini belirler.
BOOL IsUserToolCmd(UINT uiCmdId) const;
Parametreler
uiCmdId
[in] Menü öğesinin komut kimliği.
Dönüş Değeri
Belirli bir komut kimliği bir kullanıcı aracıyla ilişkiliyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu yöntem, verilen komut kimliğinin komut kimliği aralığında olup olmadığını denetler. Kullanıcı araçlarını etkinleştirmek için CWinAppEx::EnableUserTools çağrısı yaptığınızda aralığı belirtirsiniz.
CUserToolsManager::LoadState
Windows kayıt defterinden kullanıcı araçları hakkındaki bilgileri yükler.
BOOL LoadState(LPCTSTR lpszProfileName=NULL);
Parametreler
lpszProfileName
[in] Windows kayıt defteri anahtarının yolu.
Dönüş Değeri
Durum başarıyla yüklendiyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu yöntem, Windows kayıt defterinden CUserToolsManager
nesnenin durumunu yükler.
Genellikle, bu yöntemi doğrudan çağırmazsınız. CWinAppEx::LoadState bunu çalışma alanı başlatma işleminin bir parçası olarak çağırır.
CUserToolsManager::MoveToolDown
Belirtilen kullanıcı aracını kullanıcı araçları listesinde aşağı taşır.
BOOL MoveToolDown(CUserTool* pTool);
Parametreler
pTool
[in] Taşınacak kullanıcı aracını belirtir.
Dönüş Değeri
Kullanıcı aracı başarıyla aşağı taşındıysa sıfır olmayan; aksi takdirde 0.
Açıklamalar
pTool'un belirttiği araç iç listede yoksa veya araç listede son sıradaysa yöntemi başarısız olur.
CUserToolsManager::MoveToolUp
Belirtilen kullanıcı aracını kullanıcı araçları listesinde yukarı taşır.
BOOL MoveToolUp(CUserTool* pTool);
Parametreler
pTool
[in] Taşınacak kullanıcı aracını belirtir.
Dönüş Değeri
Kullanıcı aracı başarıyla taşındıysa sıfır olmayan; aksi takdirde 0.
Açıklamalar
pTool parametresinin belirttiği araç iç listede yoksa veya araç listedeki ilk araç öğesiyse yöntem başarısız olur.
CUserToolsManager::RemoveTool
Belirtilen kullanıcı aracını uygulamadan kaldırır.
BOOL RemoveTool(CUserTool* pTool);
Parametreler
pTool
[in, out] Kaldırılacak kullanıcı aracının işaretçisi.
Dönüş Değeri
Araç başarıyla kaldırılırsa TRUE. Aksi takdirde YANLIŞ.
Açıklamalar
Araç başarıyla kaldırılırsa, bu yöntem pTool'ı siler.
CUserToolsManager::SaveState
Kullanıcı araçları hakkındaki bilgileri Windows kayıt defterinde depolar.
BOOL SaveState(LPCTSTR lpszProfileName=NULL);
Parametreler
lpszProfileName
[in] Windows kayıt defteri anahtarının yolu.
Dönüş Değeri
Durum başarıyla kaydedildiyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
yöntemi, nesnenin geçerli durumunu CUserToolsManager
Windows kayıt defterinde depolar.
Genellikle bu yöntemi doğrudan çağırmanız gerekmez, CWinAppEx::SaveState uygulamanın çalışma alanı serileştirme işleminin bir parçası olarak otomatik olarak çağırır.
CUserToolsManager::SetDefExt
Dosya Aç iletişim kutusunun (CFileDialog Sınıfı) Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında kullandığı varsayılan uzantıyı belirtir.
void SetDefExt(const CString& strDefExt);
Parametreler
strDefExt
[in] Varsayılan dosya adı uzantısını içeren bir metin dizesi.
Açıklamalar
Dosya Aç iletişim kutusunda kullanıcı, kullanıcı aracıyla ilişkilendirmek üzere bir uygulama seçtiğinde görüntülenen varsayılan dosya adı uzantısını belirtmek için bu yöntemi çağırın. Varsayılan değer "exe"dir.
CUserToolsManager::SetFilter
Özelleştir iletişim kutusunun Araçlar sekmesindeki Komut alanında Dosya Aç iletişim kutusunun (CFileDialog Sınıfı) kullandığı dosya filtresini belirtir.
void SetFilter(const CString& strFilter);
Parametreler
strFilter
[in] Filtreyi belirtir.
Ayrıca bkz.
Hiyerarşi Grafiği
Sınıflar
CWinAppEx Sınıfı
CUserTool Sınıfı