Formanty MFC ActiveX
Formant ActiveX to składnik oprogramowania wielokrotnego użytku oparte na modelu COM (Component Object) obsługuje szeroką gamę funkcji OLE, który można dostosować do potrzeb wielu oprogramowania.Formanty ActiveX są zaprojektowane do użytku, zarówno w zwykłych kontenerów formantu ActiveX, jak i w Internecie, strony sieci World Wide Web.Można tworzyć formanty ActiveX MFC, opisane tutaj lub z Active Template Library (ATL).
Formant ActiveX można narysować sam w swoim własnym oknie, reagowanie na zdarzenia (na przykład kliknięcia myszą), a można zarządzać za pomocą interfejs, który zawiera właściwości i metody, podobne do tych obiektów automatyzacji.
Kontrole te mogą być rozwijane dla wielu zastosowań, takich jak dostęp do bazy danych, danych monitorowania lub wykresów.Oprócz ich przenoszenia formanty ActiveX obsługuje funkcje dostępne wcześniej nie do formantów ActiveX, takich jak zgodność z istniejących kontenery OLE i możliwość integracji swoje menu z menu kontenera OLE.Ponadto formant ActiveX w pełni obsługują automatyzacji, który umożliwia kontrolowanie narażać odczytem/zapisem właściwości i zestaw metod, które mogą być wywoływane przez użytkownika kontroli.
Można utworzyć bez okien formantów ActiveX i formanty, które tylko utworzyć okna, gdy stają się aktywne.Formanty bez okien przyspieszyć wyświetlanie aplikacji i sprawiają, że można mieć przejrzyste i o nieregularnym kształcie formantów.Właściwości formantu ActiveX można również ładować asynchronicznie.
Formant ActiveX jest zaimplementowana jako serwer w procesie (zwykle mały obiekt), które mogą być używane w dowolnym kontenerze OLE.Należy zauważyć, że wszystkie funkcje formantu ActiveX jest dostępny tylko w przypadku użycia w kontenerze OLE zaprojektowane zdawać sobie sprawę z formantów ActiveX.Zobacz Na inne aplikacje formantów ActiveX portu listę kontenerom z obsługą formantów ActiveX.Tego typu kontener, zwany dalej "kontener kontroli" formant ActiveX może działać przy użyciu właściwości i metod kontroli i otrzymuje powiadomienia z formantu ActiveX w formie zdarzenia.Na rysunku poniżej pokazano tę interakcję.
Wzajemne oddziaływanie między kontenerem ActiveX Control i okna formantu ActiveX
Dla niektórych ostatnie informacje na temat optymalizowania formantów ActiveX, zobacz formantów ActiveX MFC: Optymalizacja.
Aby utworzyć formant ActiveX biblioteki MFC, zobacz Tworzenie projektu formantu ActiveX.
Aby uzyskać więcej informacji, zobacz:
Podstawowymi składnikami formantu ActiveX
Formant ActiveX używa kilku elementów programowych na interakcję wydajnie z kontenerem kontroli i z użytkownikiem.Są to klasy COleControl, zestaw funkcji zdarzenie wypalania i wysyłki mapy.
Każdy obiekt formantu ActiveX można rozwijać dziedziczy swojej klasy bazowej MFC, zaawansowany zestaw funkcji COleControl.Funkcje te obejmują aktywację na miejscu i logiki automatyzacji.COleControlmoże dostarczyć obiekt formantu z taką samą funkcjonalność jak obiekt okna MFC, a także zdolność do uruchamiania zdarzeń.COleControlzapewnia także formanty bez okien, które opierają się na ich kontenera, aby uzyskać pomoc dotyczącą niektóre funkcje okna zawiera (przechwytywania mysz, klawiaturę, przewijanie), ale oferują znacznie szybsze wyświetlanie.
Ponieważ klasa sterowania pochodzi z COleControl, dziedziczy ona możliwość wysłania lub "fire", wiadomości, o nazwie wydarzenia, do formantu kontenera po spełnieniu pewnych warunków.Zdarzenia te są używane do notyfikują sobie kontenera sterowania, kiedy czegoś ważnego dzieje się w formancie.Dodatkowe informacje o zdarzeniu, można wysłać do kontenera kontroli przez dołączenie parametrów do zdarzenia.Aby uzyskać więcej informacji dotyczących zdarzeń dotyczących formantów ActiveX, zobacz artykuł formantów ActiveX MFC: zdarzenia.
Element końcowy jest mapa wysyłki, która jest używana do określania zestaw funkcji (zwanych metodami) i atrybuty (o nazwie właściwości) do użytkownika kontroli.Właściwości pozwalają formantu kontenera lub użytkownika kontroli do manipulowania kontroli na różne sposoby.Użytkownik może zmienić wygląd formantu, zmienić pewne wartości formantu lub zlecania formantu, takie jak dostęp do konkretnych zbiory danych, formant zachowuje.Ten interfejs jest określana przez autora kontroli i jest definiowana za pomocą Widok klasy.Aby uzyskać więcej informacji na temat właściwości i metod formantu ActiveX, zobacz artykuły formantów ActiveX MFC: metody i Właściwości.
Interakcji między formantami z systemem Windows i pojemniki formantu ActiveX
Gdy formant jest używany z formantu kontenera, używa dwóch mechanizmów do komunikowania się: to zawiera właściwości i metody, a pożary zdarzenia.Na rysunku poniżej pokazano, jak te dwa mechanizmy są implementowane.
Komunikacja między kontenerem formantu ActiveX a formantem ActiveX
Poprzedni rysunek ilustruje również, jak inne interfejsy OLE (oprócz automatyzacji i zdarzenia) są obsługiwane przez formanty.
Wszystkie formantu komunikacji z kontenerem jest wykonywana przez COleControl.Do obsługi niektórych żądań kontenera, COleControl Członkowskich będzie wywoływać funkcje, które są wykonywane w klasie kontroli.Wszystkie metody i niektóre właściwości obsługiwane w ten sposób.Klasa użytkownika sterowania może również inicjować komunikacji z kontenerem przez wywołanie funkcji elementów członkowskich z COleControl.W ten sposób uruchomienia zdarzeń.
Państwa i nieaktywnych formantu ActiveX
Formant ma dwa stany podstawowe: aktywny i nieaktywny.Tradycyjnie Państwa te były wyróżnia czy formant miał okno.Aktywny formant miał okno; nieaktywny formant nie miało miejsca.Wraz z wprowadzeniem Aktywacja bez okien to rozróżnienie nie jest już uniwersalnej, ale nadal stosuje się do wielu formantów.
Gdy formant bez okna elektrotechnicznych blach teksturowanych aktywny, powołuje się przechwytywanie myszy, klawiatury, przewijanie i innych usług okna z jego kontenera.Można także interakcji myszy do formantów nieaktywne, a także tworzyć formanty, które czekać do momentu aktywacji utworzyć okna.
Podczas kontroli z oknem staje się aktywny, jest w stanie całkowicie interaktywnie kontener kontroli, użytkownika i systemu Windows.Na poniższym rysunku przedstawiono ścieżki komunikacji między formantu ActiveX, kontener kontroli i systemu operacyjnego.
Komunikat systemu Windows przetwarzania w formancie ActiveX okienkowym (jeśli jest aktywny)
Serializacja
Zdolność do serializacji danych, czasami określane jako trwałości, umożliwia sterowanie do zapisania wartości jej właściwości w pamięci trwałej.Formanty można następnie utworzone ponownie, odczytując stan obiektu z magazynu.
Należy zauważyć, że formant nie jest odpowiedzialny za uzyskiwanie dostępu do nośnika.Zamiast tego formantu kontenera jest odpowiedzialny za dostarczanie formant z nośnikiem magazynowania do używania w odpowiednim czasie.Aby uzyskać więcej informacji na temat serializacji, zobacz artykuł formantów ActiveX MFC: szeregowania.Aby uzyskać informacje dotyczące optymalizacji serializacji, zobacz optymalizacji trwałości i inicjowania w formantach ActiveX: Optymalizacja.
Instalowanie klasy formantu ActiveX i narzędzia
Podczas instalowania programu Visual C++ MFC ActiveX kontroli zajęcia i sprzedaży detalicznej i debugowanie formant ActiveX, który wykonywania biblioteki DLL są instalowane automatycznie, jeśli formanty ActiveX są zaznaczone w ustawieniach (są one zaznaczone domyślnie).
Domyślnie klasy formantu ActiveX i narzędzia są instalowane w następującej podkatalogów katalogu \Program Files\Microsoft programu Visual Studio .NET:
\Common7\Tools
Zawiera pliki kontener testu (TstCon32.exe, jak również jego plików pomocy).
\Vc7\atlmfc\include
Zawiera pliki include potrzebne do opracowania formantów ActiveX MFC
\Vc7\atlmfc\src\mfc
Zawiera kod źródłowy dla określonych grup ubezpieczeń formant ActiveX MFC
\Vc7\atlmfc\lib
Zawiera biblioteki służące rozwojowi formantów ActiveX MFC
Istnieją również przykłady formantów MFC ActiveX.Aby uzyskać więcej informacji dotyczących tych próbek, zobacz Przykłady formantów: formanty ActiveX MFC-Based