Formanty MFC ActiveX: dodawanie metod standardowych
Metoda stockowa różni się od metody niestandardowej, ponieważ jest już zaimplementowana przez klasę COleControl. Na przykład COleControl
zawiera wstępnie zdefiniowaną funkcję składową, która obsługuje metodę Refresh dla kontrolki. Wpis mapy wysyłania dla tej metody zapasów jest DISP_STOCKFUNC_REFRESH.
Ważne
ActiveX to starsza technologia, która nie powinna być używana do tworzenia nowych rozwiązań. Aby uzyskać więcej informacji na temat nowoczesnych technologii zastępujących activex, zobacz Kontrolki ActiveX.
COleControl
obsługuje dwie metody stockowe: DoClick i Refresh. Odświeżanie jest wywoływane przez użytkownika kontrolki w celu natychmiastowego zaktualizowania wyglądu kontrolki; Polecenie DoClick jest wywoływane w celu wyzwolenia zdarzenia Click kontrolki.
Metoda | Wysyłanie wpisu mapy | Komentarz |
---|---|---|
DoClick |
DISP_STOCKPROP_DOCLICK( ) | Uruchamia zdarzenie Click. |
Refresh |
DISP_STOCKPROP_REFRESH( ) | Natychmiast aktualizuje wygląd kontrolki. |
Dodawanie metody stockowej przy użyciu Kreatora dodawania metody
Dodawanie metody stockowej jest proste przy użyciu Kreatora dodawania metody. Poniższa procedura przedstawia dodawanie metody Refresh do kontrolki utworzonej przy użyciu Kreatora kontrolek ActiveX MFC.
Aby dodać metodę odświeżania zapasów przy użyciu Kreatora dodawania metody
Załaduj projekt kontrolki.
W widoku klasy rozwiń węzeł biblioteki kontrolki.
Kliknij prawym przyciskiem myszy węzeł interfejsu kontrolki (drugi węzeł biblioteki), aby otworzyć menu skrótów.
W menu skrótów kliknij pozycję Dodaj , a następnie kliknij pozycję Dodaj metodę.
Spowoduje to otwarcie Kreatora dodawania metody.
W polu Nazwa metody kliknij przycisk Odśwież.
Kliknij przycisk Finish (Zakończ).
Dodawanie zmian kreatora metod dla metod stockowych
Ponieważ metoda stock Refresh jest obsługiwana przez klasę bazową kontrolki, Kreator dodawania metody nie zmienia deklaracji klasy kontrolki w żaden sposób. Dodaje wpis dla metody do mapy wysyłania kontrolki i do jej . Plik IDL. Następujący wiersz jest dodawany do mapy wysyłki kontrolki znajdującej się w jej implementacji (. Plik CPP):
DISP_STOCKFUNC_REFRESH()
Dzięki temu metoda Refresh jest dostępna dla użytkowników kontrolki.
Następujący wiersz jest dodawany do kontrolki . Plik IDL:
[id(DISPID_REFRESH), helpstring("method Refresh")] void Refresh(void);
Ten wiersz przypisuje metodę Refresh określony numer identyfikatora.