共用方式為


實例化 InkEdit

本主題描述您可以具現化 InkEdit 控件的各種方式。

Visual Basic .NET 和 C#

如果您正在使用 visual Basic .NET 或 C# Microsoft,請將 InkEdit 控件從 Visual Studio 中的 [工具箱] 拖曳至您想要顯示控件的表單或頁面。

Win32/C++

InkEdit 控制項是 Rich Edit 4.5 Win32 OLE 可內嵌控件的超級類別。

Win32 應用程式藉由呼叫 CreateWindow() 並將 INKEDIT 傳遞為窗口類別,具現化 InkEdit 控件。 INKEDIT 定義於 InkEd.h 中。 建立控件之後,您可以使用訊息來「與控件交談」。 Rich Edit 訊息(EM_*)會從 InkEdit 傳遞至 Rich Edit,且內容未經修改;所有現有的 Rich Edit 功能皆可使用。

若要建立 InkEdit 控件,請呼叫 CreateWindow() 函式,並指定 InkEdit 視窗類別。 使用 LoadLibrary() 註冊 InkEd.dll。 為 window 類別參數指定INKEDIT_CLASS定義的常數,並使用下列範例中指定的視窗樣式。

實例化多行 InkEdit 控制項

//...
HMODULE s_hlib;    
s_hlib= LoadLibrary("InkEd.dll");
//...
m_hwndInkEdit = CreateWindowW(INKEDIT_CLASS, NULL,
WS_CHILD|WS_VISIBLE|WS_BORDER|ES_MULTILINE,
rt.left, rt.top, rt.right, rt.bottom,
m_hWnd, NULL, hInst, NULL);

具現化 Single-Line InkEdit 控制件

//...
HMODULE s_hlib;    
s_hlib= LoadLibrary("InkEd.dll");
//...
m_hwndInkEdit = CreateWindowW(INKEDIT_CLASS, NULL,
WS_CHILD|WS_VISIBLE|WS_BORDER,
rt.left, rt.top, rt.right, rt.bottom,
m_hWnd, NULL, hInst, NULL);

注意

與 RichEdit 不同,您必須先呼叫 CoInitialize(),再建立 InkEdit 控件。 當您的應用程式關閉時,呼叫 CoUninitialize()。 呼叫 CoUninitialize() 之後,您必須 呼叫 freeLibrary(s_hlib),以遞減 InkEdit.dll 檔案的參考計數。

 

如果您使用 ES_NOIME 視窗樣式,則無法使用內建修正支援。 如果您未指定父視窗,控件會建立為最上層視窗,並新增WS_SYSMENU樣式;這也會停用內建修正支援。

將筆跡控件新增至專案