TN020: Identyfikator nazwy i numerację Konwencji
Uwaga ta opisuje identyfikator nazewnictwa i numerowania konwencje, które MFC 2.0 używa zasobów, polecenia, ciągów, formantów i okien podrzędnych.
Identyfikator MFC nazwy i numerację Konwencji mają spełniać następujące wymagania:
Zapewnienia spójnego standardu nazw identyfikator używany przez biblioteki MFC i aplikacji MFC, które są obsługiwane przez Edytor Visual C++ zasobów.To ułatwia programista interpretować, rodzaj i pochodzenie zasobów z jego identyfikator.
Wyróżnić silną zależność 1-1 między niektórych rodzajów identyfikatorów.
Odpowiada standardom już powszechnie używanych nazw identyfikatorów w systemie Windows.
Przestrzeń numerowania identyfikator partycji.Numery identyfikatorów może być przypisana przez programistę, MFC, Windows i zasoby edytowane Visual C++.Partycjonowanie właściwe pomoc, uniknięcia powielania numery identyfikatorów.
Konwencja nazewnictwa prefiks Identyfikatora
Kilka typów identyfikatorów może wystąpić w aplikacji.Konwencja nazewnictwa identyfikator MFC definiuje różne prefiksy dla różne typy zasobów.
MFC używa prefiksu "IDR_" w celu wskazania identyfikator zasobu, który stosuje się do wielu typów zasobów.Na przykład dla danej ramki okna, MFC używa tej samej prefiksu "IDR_" Aby wskazać menu, akcelerator, string i ikonę zasobu.W poniższej tabeli przedstawiono różne prefiksy oraz sposób ich użycia:
Prefiks |
Użyj |
---|---|
IDR_ |
Dla wielu typów zasobów (przede wszystkim do menu, akceleratory i wstążki). |
IDD_ |
Okno dialogowe szablonu zasobów (na przykład IDD_DIALOG1). |
IDC_ |
Dla zasobów kursora. |
IDI_ |
Ikona zasobów. |
IDB_ |
Dla zasobów mapy bitowej. |
IDS_ |
Dla zasobów ciągu. |
W ramach zasób okno dialogowe MFC następujące konwencje:
Prefiks lub etykietę |
Użyj |
---|---|
IDOK, IDCANCEL |
Dla przycisku polecenia standardowych identyfikatorów. |
IDC_ |
Dla innych formantów okna dialogowego. |
Prefiks "IDC_" jest także używany do kursory.Ten konflikt nazw nie jest zwykle problem ponieważ Typowa aplikacja będzie mieć kilka kursory i wiele formantów okna dialogowego.
W menu zasobu MFC następujące konwencje:
Prefiks |
Użyj |
---|---|
IDM_ |
Dla elementów menu, które nie korzystają z architektury polecenia MFC. |
ID_ |
Dla polecenia menu korzystających z architektury polecenia MFC. |
Polecenia architektury polecenia MFC musi mieć ON_COMMAND polecenia obsługi i może mieć ON_UPDATE_COMMAND_UI obsługi.Jeśli te programy obsługi polecenia wykonaj architektury polecenia MFC, będą one działać prawidłowo czy są powiązane z polecenia menu, przycisku paska narzędzi lub okna dialogowego przycisk paska.Ten sam prefiks "ID_" służy do szybkiego ciąg menu wyświetlanego na pasku wiadomości programu.Większość elementów menu w aplikacji powinien spełniać zasady polecenia MFC.Wszystkie standardowe polecenia identyfikatory (na przykład ID_FILE_NEW) postępuj zgodnie z niniejszą Konwencją.
MFC używa również "IDP_" jako wyspecjalizowane formularz ciągów (zamiast "IDS_").Ciągi znaków prefiksu "IDP_" są monity, czyli ciągów znaków użytych w polach komunikatu. "IDP_ "ciągi mogą zawierać jako elementy zastępcze ciągów ustalone przez program"% 1"i"% 2". "IDP_ "ciągi mają zazwyczaj tematy Pomocy związane z nimi i nie ciągi"IDS_". "IDP_ "ciągi są zawsze zlokalizowana i nie mogą być zlokalizowane ciągi"IDS_".
Biblioteki MFC również używa prefiksu "IDW_" jako wyspecjalizowane forma kontroli identyfikatory (zamiast "IDC_").Te identyfikatory są przypisywane do okien podrzędnych, takie jak widoki i rozdzielaczy według klas ramy.Identyfikatory wykonania MFC jest poprzedzona nazwą "AFX_".
Numeracja identyfikator Konwencji
Poniższa lista zawiera prawidłowe zakresy dla identyfikatory określone typy.Niektóre limity są ograniczenia techniczne wdrożenie i inne są konwencje, zaprojektowane, aby zapobiec kolizji z wstępnie zdefiniowanych identyfikatory systemu Windows lub MFC domyślne implementacje swoje identyfikatory.
Zdecydowanie zaleca się aby zdefiniować wszystkie identyfikatory wewnątrz zalecane zakresy.Dolna granica tych zakresów jest 1, ponieważ 0 nie jest używany.Zaleca się używać wspólnej Konwencji i użyć 100 i 101 jako pierwszy identyfikatora.
Prefiks |
Typ zasobu |
Prawidłowy zakres |
---|---|---|
IDR_ |
wiele |
od 1 do 0x6FFF |
IDD_ |
okno dialogowe Szablony |
od 1 do 0x6FFF |
IDC_, IDI_, IDB_ |
kursory, ikony, mapy bitowe |
od 1 do 0x6FFF |
IDS_, IDP_ |
ciągi ogólne |
od 1 do 0x7FFF |
ID_ |
polecenia |
0x8000 poprzez 0xDFFF |
IDC_ |
Formanty |
8 do 0xDFFF |
Powody tych granicach zakresu:
Umownie wartość Identyfikatora 0 nie jest używany.
Ograniczenia wdrażania systemu Windows ogranicza true zasobu identyfikatorów może być mniejsza niż lub równa 0x7FFF.
Implementacje wewnętrzną strukturę MFC firmy zarezerwować dwóch zakresach: 0x7000 0x7FFF i 0xE000 przez 0xEFFF.
Kilka poleceń systemu Windows użyj zakresu 0xF000 poprzez 0xFFFF.
Identyfikatory formantów od 1 do 7 są zarezerwowane dla standardowych formantów, takich jak IDOK i IDCANCEL.
Zakres 0x8000 poprzez 0xFFFF ciągi jest zarezerwowana dla poleceń menu monity.