2008/08/08

觸控面板與手寫輸入 windows programming

這幾天的研究,主要就是要看看標題所寫的問題要怎麼做,主要是針對 windows XP/Vista.


  1. 呼叫輸入法
    1. 範例

      void   CNewUrlDlg::OnSetfocusEditNewurl()    
      {  
        //   TODO:   Add   your   control   notification   handler   code   here  
        CEdit   *pEdit=(CEdit*)   GetDlgItem(IDC_EDIT_NEWURL);  
        HWND   hwnd=pEdit->GetSafeHwnd();  
        HKL   hkl   =   GetKeyboardLayout(0);  
        if(!ImmIsIME(hkl))  
        ImmSimulateHotKey(hwnd,IME_CHOTKEY_IME_NONIME_TOGGLE);  
      }

      其中 IME_CHOTKEY_IME_NONIME_TOGGLE 在Input Method一文中有說明。

    2. 自行呼叫應用程式
      Vista 下的手寫板是獨立應用程式,名稱叫 TabTip.exe, 可自行呼叫
      ShellExecute(GetParent()->m_hWnd, NULL, "TabTip.exe", NULL, NULL, SW_SHOWNORMAL);

  2. 自行開發
    1. 可透過 InkEdit, InkPicture 等自訂手寫輸入外觀 ,可參考
    2. http://msdn.microsoft.com/zh-cn/library/ms812487.aspx
    3. 欲進行細部自訂請參考
    4. http://msdn.microsoft.com/zh-tw/library/system.windows.ink.aspx
    5. http://msdn.microsoft.com/zh-tw/library/system.windows.ink.inkanalyzer.aspx 用來分析手寫板
    6. http://msdn.microsoft.com/zh-tw/library/system.windows.ink.inkrecognizer.aspx 用於識別,由 InkAnylyzer 用於識別
    7. http://msdn.microsoft.com/zh-tw/library/system.windows.ink.gesturerecognizer.aspx  這似乎只在 Vista 下能用
    8. http://msdn.microsoft.com/zh-tw/library/microsoft.ink.textinput(VS.85).aspx 用於手寫板識別後的文字取得

  3. XP 的支援
    http://www.microsoft.com/downloads/details.aspx?familyid=84bbefa4-7047-41df-8583-e3bdbf9d805f&displaylang=en
  4. 參考書
    • Building Tablet PC Applications
    • by  Rob Jarrett and Philip Su
    • Pages 576
    • User Level All
    • ISBN 0-7356-1723-6
    • Release date 25 September 2002

0 意見: