Kelas CUserToolsManager
Mempertahankan koleksi objek Kelas CUserTool dalam aplikasi. Alat pengguna adalah item menu yang menjalankan aplikasi eksternal. Objek memungkinkan CUserToolsManager
pengguna atau pengembang untuk menambahkan alat pengguna baru ke aplikasi. Ini mendukung eksekusi perintah yang terkait dengan alat pengguna, dan juga menyimpan informasi tentang alat pengguna di registri Windows.
Sintaks
class CUserToolsManager : public CObject
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CUserToolsManager::CUserToolsManager | Membangun sebuah CUserToolsManager . |
Metode Publik
Nama | Deskripsi |
---|---|
CUserToolsManager::CreateNewTool | Membuat alat pengguna baru. |
CUserToolsManager::FindTool | Mengembalikan penunjuk ke CMFCUserTool objek yang terkait dengan ID perintah tertentu. |
CUserToolsManager::GetArgumentsMenuID | Mengembalikan ID sumber daya yang terkait dengan menu Argumen pada tab Alat dari kotak dialog Kustomisasi . |
CUserToolsManager::GetDefExt | Mengembalikan ekstensi default yang digunakan kotak dialog Buka File ( CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi . |
CUserToolsManager::GetFilter | Mengembalikan filter file yang digunakan kotak dialog Buka File ( Kelas CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi . |
CUserToolsManager::GetInitialDirMenuID | Mengembalikan ID sumber daya yang terkait dengan menu Direktori awal pada tab Alat dari kotak dialog Kustomisasi . |
CUserToolsManager::GetMaxTools | Mengembalikan jumlah maksimum alat pengguna yang dapat dialokasikan dalam aplikasi. |
CUserToolsManager::GetToolsEntryCmd | Mengembalikan ID perintah tempat penampung item menu untuk alat pengguna. |
CUserToolsManager::GetUserTools | Mengembalikan referensi ke daftar alat pengguna. |
CUserToolsManager::InvokeTool | Menjalankan aplikasi yang terkait dengan alat pengguna yang memiliki ID perintah tertentu. |
CUserToolsManager::IsUserToolCmd | Menentukan apakah ID perintah dikaitkan dengan alat pengguna. |
CUserToolsManager::LoadState | Memuat informasi tentang alat pengguna dari registri Windows. |
CUserToolsManager::MoveToolDown | Memindahkan alat pengguna yang ditentukan ke bawah dalam daftar alat pengguna. |
CUserToolsManager::MoveToolUp | Memindahkan alat pengguna yang ditentukan ke atas dalam daftar alat pengguna. |
CUserToolsManager::RemoveTool | Menghapus alat pengguna yang ditentukan dari aplikasi. |
CUserToolsManager::SaveState | Menyimpan informasi tentang alat pengguna di registri Windows. |
CUserToolsManager::SetDefExt | Menentukan ekstensi default yang digunakan kotak dialog Buka File ( Kelas CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi . |
CUserToolsManager::SetFilter | Menentukan filter file yang digunakan kotak dialog Buka File ( Kelas CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi . |
Keterangan
Untuk menggabungkan alat pengguna ke dalam aplikasi, Anda harus:
Pesan item menu dan ID perintah terkait untuk entri menu alat pengguna.
Pesan ID perintah berurutan untuk setiap alat pengguna yang dapat ditentukan pengguna dalam aplikasi Anda.
Panggil metode CWinAppEx::EnableUserTools dan berikan parameter berikut: ID perintah menu, ID perintah alat pengguna pertama, dan ID perintah alat pengguna terakhir.
Seharusnya hanya ada satu objek global CUserToolsManager
per aplikasi.
Untuk contoh alat pengguna, lihat proyek sampel VisualStudioDemo.
Contoh
Contoh berikut menunjukkan cara mengambil referensi ke CUserToolsManager
objek dan cara membuat alat pengguna baru. Cuplikan kode ini adalah bagian dari sampel Demo Visual Studio.
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"));
}
Hierarki Warisan
CUserToolsManager
Persyaratan
Header: afxusertoolsmanager.h
CUserToolsManager::CreateNewTool
Membuat alat pengguna baru.
CUserTool* CreateNewTool();
Tampilkan Nilai
Penunjuk ke alat pengguna yang baru dibuat, atau NULL jika jumlah alat pengguna telah melebihi maksimum. Jenis yang dikembalikan sama dengan jenis yang diteruskan ke CWinAppEx::EnableUserTools
sebagai parameter pToolRTC .
Keterangan
Metode ini menemukan ID perintah menu pertama yang tersedia dalam rentang yang disediakan dalam panggilan ke CWinAppEx::EnableUserTools dan menetapkan alat pengguna ID ini.
Metode gagal jika jumlah alat telah mencapai maksimum. Ini terjadi ketika semua ID perintah dalam rentang ditetapkan ke alat pengguna. Anda dapat mengambil jumlah maksimum alat dengan memanggil CUserToolsManager::GetMaxTools. Anda bisa mendapatkan akses ke daftar alat dengan memanggil metode CUserToolsManager::GetUserTools .
CUserToolsManager::CUserToolsManager
Membangun sebuah CUserToolsManager
. Setiap aplikasi harus memiliki paling banyak satu manajer alat pengguna.
CUserToolsManager();
CUserToolsManager(
const UINT uiCmdToolsDummy,
const UINT uiCmdFirst,
const UINT uiCmdLast,
CRuntimeClass* pToolRTC=RUNTIME_CLASS(CUserTool),
UINT uArgMenuID=0,
UINT uInitDirMenuID=0);
Parameter
uiCmdToolsDummy
[di] Bilangan bulat yang tidak ditandatangani yang digunakan kerangka kerja sebagai tempat penampung untuk ID perintah menu alat pengguna.
uiCmdFirst
[di] ID perintah untuk perintah alat pengguna pertama.
uiCmdLast
[di] ID perintah untuk perintah alat pengguna terakhir.
pToolRTC
[di] Kelas yang dibuat CUserToolsManager::CreateNewTool . Dengan menggunakan kelas ini, Anda dapat menggunakan jenis turunan Kelas CUserTool alih-alih implementasi default.
uArgMenuID
[di] ID sumber daya menu dari menu popup argumen.
uInitDirMenuID
[di] ID sumber daya menu dari menu popup direktori awal.
Keterangan
Jangan panggil konstruktor ini. Sebagai gantinya, panggil CWinAppEx::EnableUserTools untuk mengaktifkan alat pengguna, dan panggil CWinAppEx::GetUserToolsManager untuk mendapatkan pointer ke CUserToolsManager
. Untuk informasi selengkapnya, lihat Alat yang ditentukan pengguna.
CUserToolsManager::FindTool
Mengembalikan penunjuk ke objek Kelas CUserTool yang terkait dengan ID perintah tertentu.
CUserTool* FindTool(UINT uiCmdId) const;
Parameter
uiCmdId
[di] Pengidentifikasi perintah menu.
Tampilkan Nilai
Penunjuk ke Kelas CUserTool atau CUserTool
objek -turunan jika berhasil; jika tidak, NULL.
Keterangan
Ketika FindTool
berhasil, jenis yang dikembalikan sama dengan jenis parameter pToolRTC ke CWinAppEx::EnableUserTools.
CUserToolsManager::GetArgumentsMenuID
Mengembalikan ID sumber daya yang terkait dengan menu Argumen pada tab Alat dari kotak dialog Kustomisasi .
UINT GetArgumentsMenuID() const;
Tampilkan Nilai
Pengidentifikasi sumber daya menu.
Keterangan
Parameter uArgMenuID CWinAppEx ::EnableUserTools menentukan ID sumber daya.
CUserToolsManager::GetDefExt
Mengembalikan ekstensi default yang digunakan kotak dialog Buka File ( CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi .
const CString& GetDefExt() const;
Tampilkan Nilai
Referensi ke CString
objek yang berisi ekstensi.
CUserToolsManager::GetFilter
Mengembalikan filter file yang digunakan kotak dialog Buka File ( Kelas CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi .
const CString& GetFilter() const;
Tampilkan Nilai
Referensi ke CString
objek yang berisi filter.
CUserToolsManager::GetInitialDirMenuID
Mengembalikan ID sumber daya yang terkait dengan menu Direktori awal pada tab Alat dari kotak dialog Kustomisasi .
UINT GetInitialDirMenuID() const;
Tampilkan Nilai
Pengidentifikasi sumber daya menu.
Keterangan
ID yang dikembalikan ditentukan dalam parameter uInitDirMenuID dari CWinAppEx::EnableUserTools.
CUserToolsManager::GetMaxTools
Mengembalikan jumlah maksimum alat pengguna yang dapat dialokasikan dalam aplikasi.
int GetMaxTools() const;
Tampilkan Nilai
Jumlah maksimum alat pengguna yang dapat dialokasikan.
Keterangan
Panggil metode ini untuk mengambil jumlah maksimum alat yang dapat dialokasikan dalam aplikasi. Angka ini adalah jumlah ID dalam rentang dari uiCmdFirst melalui parameter uiCmdLast yang Anda teruskan ke CWinAppEx::EnableUserTools.
CUserToolsManager::GetToolsEntryCmd
Mengembalikan ID perintah tempat penampung item menu untuk alat pengguna.
UINT GetToolsEntryCmd() const;
Tampilkan Nilai
ID perintah tempat penampung.
Keterangan
Untuk mengaktifkan alat pengguna, Anda memanggil CWinAppEx::EnableUserTools. Parameter uiCmdToolsDummy menentukan ID perintah perintah entri alat. Metode ini mengembalikan ID perintah entri alat. Di mana pun ID tersebut digunakan dalam menu, ID tersebut digantikan oleh daftar alat pengguna saat menu muncul.
CUserToolsManager::GetUserTools
Mengembalikan referensi ke daftar alat pengguna.
const CObList& GetUserTools() const;
Tampilkan Nilai
Referensi const ke objek Kelas CObList yang berisi daftar alat pengguna.
Keterangan
Panggil metode ini untuk mengambil daftar alat pengguna yang dipertahankan objek CUserToolsManager . Setiap alat pengguna diwakili oleh objek jenis Kelas CUserTool atau jenis yang berasal dari CUserTool
. Jenis ditentukan oleh parameter pToolRTC saat Anda memanggil CWinAppEx::EnableUserTools untuk mengaktifkan alat pengguna.
CUserToolsManager::InvokeTool
Menjalankan aplikasi yang terkait dengan alat pengguna yang memiliki ID perintah tertentu.
BOOL InvokeTool(UINT uiCmdId);
Parameter
uiCmdId
[di] ID perintah menu yang terkait dengan alat pengguna.
Tampilkan Nilai
Bukan nol jika perintah yang terkait dengan alat pengguna berhasil dijalankan; jika tidak, 0.
Keterangan
Panggil metode ini untuk menjalankan aplikasi yang terkait dengan alat pengguna yang memiliki ID perintah yang ditentukan oleh uiCmdId.
CUserToolsManager::IsUserToolCmd
Menentukan apakah ID perintah dikaitkan dengan alat pengguna.
BOOL IsUserToolCmd(UINT uiCmdId) const;
Parameter
uiCmdId
[di] ID perintah item menu.
Tampilkan Nilai
Bukan nol jika ID perintah tertentu dikaitkan dengan alat pengguna; jika tidak, 0.
Keterangan
Metode ini memeriksa apakah ID perintah yang diberikan berada dalam rentang ID perintah. Anda menentukan rentang saat memanggil CWinAppEx::EnableUserTools untuk mengaktifkan alat pengguna.
CUserToolsManager::LoadState
Memuat informasi tentang alat pengguna dari registri Windows.
BOOL LoadState(LPCTSTR lpszProfileName=NULL);
Parameter
lpszProfileName
[di] Jalur kunci registri Windows.
Tampilkan Nilai
Bukan nol jika status berhasil dimuat; jika tidak, 0.
Keterangan
Metode ini memuat status CUserToolsManager
objek dari registri Windows.
Biasanya, Anda tidak memanggil metode ini secara langsung. CWinAppEx::LoadState memanggilnya sebagai bagian dari proses inisialisasi ruang kerja.
CUserToolsManager::MoveToolDown
Memindahkan alat pengguna yang ditentukan ke bawah dalam daftar alat pengguna.
BOOL MoveToolDown(CUserTool* pTool);
Parameter
pTool
[di] Menentukan alat pengguna yang akan dipindahkan.
Tampilkan Nilai
Nonzero jika alat pengguna berhasil dipindahkan ke bawah; jika tidak, 0.
Keterangan
Metode gagal jika alat yang ditentukan pTool tidak ada dalam daftar internal atau jika alat terakhir dalam daftar.
CUserToolsManager::MoveToolUp
Memindahkan alat pengguna yang ditentukan ke atas dalam daftar alat pengguna.
BOOL MoveToolUp(CUserTool* pTool);
Parameter
pTool
[di] Menentukan alat pengguna yang akan dipindahkan.
Tampilkan Nilai
Bukan nol jika alat pengguna berhasil dipindahkan; jika tidak, 0.
Keterangan
Metode gagal jika alat yang ditentukan parameter pTool tidak ada dalam daftar internal atau jika alat tersebut adalah item alat pertama dalam daftar.
CUserToolsManager::RemoveTool
Menghapus alat pengguna yang ditentukan dari aplikasi.
BOOL RemoveTool(CUserTool* pTool);
Parameter
pTool
[masuk, keluar] Penunjuk ke alat pengguna yang akan dihapus.
Tampilkan Nilai
TRUE jika alat berhasil dihapus. Jika tidak, FALSE.
Keterangan
Jika alat berhasil dihapus, metode ini akan menghapus pTool.
CUserToolsManager::SaveState
Menyimpan informasi tentang alat pengguna di registri Windows.
BOOL SaveState(LPCTSTR lpszProfileName=NULL);
Parameter
lpszProfileName
[di] Jalur ke kunci registri Windows.
Tampilkan Nilai
Bukan nol jika status berhasil disimpan; jika tidak, 0.
Keterangan
Metode ini menyimpan status CUserToolsManager
objek saat ini di registri Windows.
Biasanya, Anda tidak perlu memanggil metode ini secara langsung, CWinAppEx::SaveState memanggilnya secara otomatis sebagai bagian dari proses serialisasi ruang kerja aplikasi.
CUserToolsManager::SetDefExt
Menentukan ekstensi default yang digunakan kotak dialog Buka File ( Kelas CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi .
void SetDefExt(const CString& strDefExt);
Parameter
strDefExt
[di] String teks yang berisi ekstensi nama file default.
Keterangan
Panggil metode ini untuk menentukan ekstensi nama file default dalam kotak dialog Buka File, yang ditampilkan saat pengguna memilih aplikasi untuk dikaitkan dengan alat pengguna. Defaultnya adalah "exe".
CUserToolsManager::SetFilter
Menentukan filter file yang digunakan kotak dialog Buka File ( Kelas CFileDialog) di bidang Perintah pada tab Alat dari kotak dialog Kustomisasi .
void SetFilter(const CString& strFilter);
Parameter
strFilter
[di] Menentukan filter.