Aracılığıyla paylaş


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 CUserToolsManageroluş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:

  1. Kullanıcı aracı menü girdisi için bir menü öğesi ve ilişkili komut kimliği ayırın.

  2. 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.

  3. 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

CObject

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 CUserToolsManageroluş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 CUserToolsManageralı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 CUserTooltü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 CUserTooltü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ı