TEXTWIN.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:4k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /*+==========================================================================
  2.   File:      TEXTWIN.H
  3.   Summary:   Include file for the CTextWin C++ object that encapsulates
  4.              the multi-line edit control that displays the edited text for
  5.              a text page.
  6.   Classes:   CTextWin
  7.   Functions: none.
  8.   Origin:    5-25-97: atrent - Editor Inheritance from CListWin in
  9.              LISTWIN.H
  10. ----------------------------------------------------------------------------
  11.   This file is part of the Microsoft COM Tutorial Code Samples.
  12.   Copyright (C) Microsoft Corporation, 1997.  All rights reserved.
  13.   This source code is intended only as a supplement to Microsoft
  14.   Development Tools and/or on-line documentation.  See these other
  15.   materials for detailed information regarding Microsoft code samples.
  16.   THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  17.   KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  18.   IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  19.   PARTICULAR PURPOSE.
  20. ==========================================================================+*/
  21. // Don't allow recursive includes of this file.
  22. #ifndef TEXTWIN_H
  23. #define TEXTWIN_H
  24. #define MAX_TEXT_SIZE 4095
  25. // TextWin command IDs.
  26. #define IDC_TEXTWIN 7100
  27. #ifdef __cplusplus
  28. /*C+C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C+++C
  29.   Class:    CTextWin
  30.   Summary:  Class for the text edit control window used for editing
  31.             text pages.
  32.   Methods:  CTextWin
  33.               Constructor.
  34.             ~CTextWin
  35.               Destructor.
  36.             HRESULT Init(HINSTANCE hInst,HWND hWndParent,HWND* phWndEdit);
  37.               Create & initialize the text edit control as child window.
  38.             HRESULT GetLength(INT* piTextLength);
  39.               Get length of current text content in edit control.
  40.             HRESULT GetText(WCHAR* pwszText);
  41.               Get the text content of the edit control.
  42.             HRESULT PutText(WCHAR* pwszText, INT iTextLength);
  43.               Puts text content into the text edit control.
  44.             HRESULT Resize(INT nWidth, INT nHeight);
  45.               Resizes the edit control to a new width and height in pixels.
  46.             HRESULT Clear(void);
  47.               Clears/deletes all text content in the edit control.
  48.             HRESULT EditUndo(void);
  49.               Tell text edit control to undo last operation.
  50.             HRESULT EditSelectAll(void);
  51.               Tell text edit control to select all text in it.
  52.             HRESULT EditCut(void);
  53.               Tell text edit control to cut selected text to clipboard.
  54.             HRESULT EditCopy(void);
  55.               Tell text edit control to copy selected text to clipboard.
  56.             HRESULT EditPaste(void);
  57.               Tell text edit control to paste clipboard contents into
  58.               edit control.
  59.             HRESULT EditDelete(void);
  60.               Tell text edit control to delete currently selected text.
  61. C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C---C-C*/
  62. class CTextWin
  63. {
  64.   public:
  65.     // Constructor and Destructor.
  66.     CTextWin();
  67.     ~CTextWin();
  68.     // The methods to function the text edit control window.
  69.     HRESULT Init(
  70.               HINSTANCE hInst,
  71.               HWND hWndParent,
  72.               HWND* phWndEdit);
  73.     HRESULT GetLength(INT* piTextLength);
  74.     HRESULT GetText(WCHAR* pwszText);
  75.     HRESULT PutText(WCHAR* pwszText, INT iTextLength);
  76.     HRESULT Resize(INT nWidth, INT nHeight);
  77.     HRESULT Clear(void);
  78.     HRESULT EditUndo(void);
  79.     HRESULT EditSelectAll(void);
  80.     HRESULT EditCut(void);
  81.     HRESULT EditCopy(void);
  82.     HRESULT EditPaste(void);
  83.     HRESULT EditDelete(void);
  84.   private:
  85.     // Private data members.
  86.     HINSTANCE m_hInst;         // App Instance Handle.
  87.     HWND m_hWnd;               // Handle of the edit control window.
  88.     WORD m_wWidth;             // Window rect width.
  89.     WORD m_wHeight;            // Window rect height.
  90. };
  91. #endif //__cplusplus
  92. #endif //TEXTWIN_H