Interpretowanie danych wprowadzonych przez użytkownika za pośrednictwem widokuInterpreting User Input Through a View

Inne funkcje elementów członkowskich uchwytu widoku i interpretują wszystkie dane wejściowe użytkownika.Other member functions of the view handle and interpret all user input. Zwykle definiujesz funkcje członkowskie obsługi komunikatów w klasie widoku do przetworzenia:You will usually define message-handler member functions in your view class to process:

  • Komunikaty systemu Windows generowane przez akcje myszy i klawiatury.Windows messages generated by mouse and keyboard actions.

  • Polecenia z menu, przyciski paska narzędzi i klawisze skrótów.Commands from menus, toolbar buttons, and accelerator keys.

Te funkcje członkowskie programu obsługi komunikatów interpretują następujące działania jako dane wejściowe, wybrane lub edytowane, w tym przeniesienie danych do i ze schowka:These message-handler member functions interpret the following actions as data input, selection, or editing, including moving data to and from the Clipboard:

  • Ruchy myszy i kliknięcia, przeciąganie i podwójne kliknięcieMouse movements and clicks, drags, and double-clicks

  • Naciśnięć klawiszyKeystrokes

  • Polecenia menuMenu commands

Które komunikaty systemu Windows, które są obsługiwane przez widok, zależy od potrzeb aplikacji.Which Windows messages your view handles depends on your application's needs.

Tematy obsługi komunikatów i mapowania wyjaśniają sposób przypisywania elementów menu i innych obiektów interfejsu użytkownika do poleceń oraz sposób powiązania poleceń z funkcjami obsługi.Message Handling and Mapping Topics explains how to assign menu items and other user-interface objects to commands and how to bind the commands to handler functions. Tematy obsługi komunikatów i mapowania wyjaśniają także, jak MFC kieruje polecenia i wysyła standardowe komunikaty systemu Windows do obiektów, które zawierają procedury obsługi.Message Handling and Mapping Topics also explains how MFC routes commands and sends standard Windows messages to the objects that contain handlers for them.

Na przykład aplikacja może wymagać zaimplementowania bezpośredniego rysowania myszy w widoku.For example, your application might need to implement direct mouse drawing in the view. Przykład Bazgroły pokazuje, jak obsłużyć odpowiednio WM_LBUTTONDOWN, WM_MOUSEMOVE i WM_LBUTTONUP wiadomości, aby rozpocząć, kontynuować i zakończyć rysowanie segmentu linii.The Scribble sample shows how to handle the WM_LBUTTONDOWN, WM_MOUSEMOVE, and WM_LBUTTONUP messages respectively to begin, continue, and end the drawing of a line segment. Z drugiej strony czasami trzeba interpretować myszą w widoku jako zaznaczenie.On the other hand, you might sometimes need to interpret a mouse click in your view as a selection. OnLButtonDownFunkcja obsługi widoku decyduje o tym, czy użytkownik był rysowany lub wybierany.Your view's OnLButtonDown handler function would determine whether the user was drawing or selecting. W przypadku wybrania program obsługi zdecyduje, czy kliknięcie znajdował się w granicach niektórych obiektów w widoku, a jeśli tak, Zmień wartość wyświetlaną, aby pokazać obiekt jako wybrany.If selecting, the handler would determine whether the click was within the bounds of some object in the view and, if so, alter the display to show the object as selected.

Widok może również obsługiwać niektóre polecenia menu, takie jak te z menu Edycja, aby wyciąć, skopiować, wkleić lub usunąć wybrane dane przy użyciu Schowka.Your view might also handle certain menu commands, such as those from the Edit menu to cut, copy, paste, or delete selected data using the Clipboard. Taka procedura obsługi wywoła niektóre elementy członkowskie powiązane z schowkiem klasy CWnd w celu przeniesienia wybranego elementu danych do lub ze schowka.Such a handler would call some of the Clipboard-related member functions of class CWnd to transfer a selected data item to or from the Clipboard.

Zobacz teżSee also

Korzystanie z widokówUsing Views