Udostępnij za pośrednictwem


Schowek: Dodawanie innych formatów

W tym temacie objaśniono rozwiń listę obsługiwanych formatów, szczególnie dla wsparcia OLE.Temat Schowek: kopiowanie i Pasting danych opisano minimalną wykonania niezbędnych do obsługi, kopiowanie i wklejanie ze Schowka.Jeśli wszystkie zaimplementowaniem, tylko formaty, umieszczane w Schowku są CF_METAFILEPICT, CF_EMBEDSOURCE, CF_OBJECTDESCRIPTORi ewentualnie CF_LINKSOURCE.Większość aplikacji należy więcej formatów w Schowku niż te trzy.

Rejestrowanie niestandardowe formaty

Aby utworzyć własne niestandardowe formaty, wykonaj tę samą procedurę, należy użyć podczas rejestrowania wszelkich niestandardowy format Schowka: przekazać nazwę formatu do RegisterClipboardFormat funkcję i użyć jej wartości zwracanej jako identyfikator formatu.

Formaty wprowadzania do Schowka

Aby dodać więcej formatów umieszczane w Schowku, należy zastąpić OnGetClipboardData funkcji klasy pochodzące od albo COleClientItem lub COleServerItem (w zależności od tego, czy dane mają być kopiowane jest macierzystym).W tej funkcji należy użyć następującej procedury.

Aby umieścić formaty w Schowku

  1. Tworzenie COleDataSource obiektu.

  2. Przekazywać tego źródła danych do funkcji, która dodaje użytkownika formaty danych w trybie macierzystym do listy obsługiwanych formatów, wywołując COleDataSource::CacheGlobalData.

  3. Dodawanie standardowych formatów, wywołując COleDataSource::CacheGlobalData dla każdego standardowego formatu chcesz obsługiwać.

Ta technika jest używany w programie próbki MFC OLE HIERSVR (zbadać OnGetClipboardData Członkowskich funkcji CServerItem klasy).Jedyna różnica w tej próbce jest ten krok 3 nie jest zaimplementowana, ponieważ HIERSVR obsługuje innych standardowych formatów.

838a3whf.collapse_all(pl-pl,VS.110).gifCo chcesz wiedzieć więcej?

Zobacz też

Informacje

Schowek: Za pomocą mechanizmu OLE Schowka