Schowek: kopiowanie i wklejanie danych
W tym temacie opisano minimalne prac niezbędnych do wdrożenia, kopiowanie i wklejanie ze Schowka w aplikacji OLE.Zaleca się przeczytanie obiekty danych i źródeł danych (OLE) tematy przed kontynuowaniem.
Przed zaimplementowaniem albo kopiowanie lub wklejanie, najpierw trzeba określić funkcje do obsługi opcji Kopiuj, Wytnij i Wklej w menu Edycja.
Kopiowanie lub wycinanie danych
Aby skopiować dane do Schowka
Określić, czy dane mają być kopiowane są danych w trybie macierzystym lub osadzonego lub połączonego elementu.
Jeśli dane został osadzony czy połączony, uzyskać wskaźnik do COleClientItem obiekt, który został wybrany.
Jeśli aplikacja jest serwerem danych jest macierzystym, należy utworzyć nowy obiekt pochodzące z COleServerItem zawierające zaznaczone dane.W przeciwnym wypadku utwórz COleDataSource obiektu danych.
Wywołanie wybranego elementu CopyToClipboard funkcji składowej.
Jeśli użytkownik wybrał operację cięcia, a nie operacji kopiowania, Usuń zaznaczone dane z aplikacji.
Aby zapoznać się z przykładem tej sekwencji, zobacz OnEditCut i OnEditCopy programy przykładowe funkcje w MFC OLE OCLIENT i HIERSVR.Należy zauważyć, że próbki te Obsługa wskaźnik do aktualnie wybranych danych, więc krok 1 została już zakończona.
Wklejanie danych
Wklejanie danych jest bardziej skomplikowane niż skopiowanie go, ponieważ trzeba wybrać format używany w wkleić dane do aplikacji.
Aby wkleić danych ze Schowka
W klasie widoku implementuje OnEditPaste do obsługi użytkowników, wybierając opcję Wklej z menu Edycja.
W OnEditPaste funkcji, tworzenie COleDataObject obiektu i wywołania jego AttachClipboard funkcji członka na ten obiekt połączony danych w Schowku.
Wywołanie COleDataObject::IsDataAvailable do sprawdzenia, czy w określonym formacie jest dostępna.
Alternatywnie można użyć COleDataObject::BeginEnumFormats do poszukiwania innych formatów, aż znajdziesz najlepiej dostosowane do aplikacji.
Wykonać Wklej format.
Na przykład, jak to działa, zobacz wykonania OnEditPaste funkcji elementów członkowskich w widoku klas zdefiniowanych w programy MFC OLE próbki OCLIENT i HIERSVR.
Porada |
---|
Główną zaletą rozdzielenia operacji wklejania do własnej funkcji jest że sam Wklej kod może być używany po upuszczeniu danych w aplikacji podczas operacji przeciągania i upuszczania.Jak w OCLIENT i HIERSVR z OnDrop można również wywołać funkcję DoPasteItem, ponowne używanie kod napisany w celu wykonania operacji wklejania. |
Aby obsłużyć polecenia Wklej specjalnie w menu Edycja, zobacz temat Okien dialogowych w OLE.