- 帖子
- 835
- 主題
- 6
- 精華
- 0
- 積分
- 915
- 點名
- 0
- 作業系統
- Win 10,7
- 軟體版本
- 2019,2013,2003
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2010-5-3
- 最後登錄
- 2024-11-14
|
4#
發表於 2013-9-4 23:08
| 只看該作者
本帖最後由 luhpro 於 2013-9-4 23:11 編輯
回復 1# sillykin
網路上找到的方法, 利用 SendKeys -
使用前必須先設定好輸入法的快速切換鍵 :
倉頡 Ctrl + Shift + 1
注音 Ctrl + Shift + 3 如右圖 :
因為 TextBox 沒有類似 GotFocus 或是 Activate 之類的事件來實作剛進入時切換輸入法的動作,
這裡我透過各TextBox 的 MouseUp 事件來切換輸入法,
不過, 此法只能用於滑鼠點擊的方式來做切換 TextBox 的動作,
若是使用者使用 Tab 鍵來切換的話就只能切換是否為中文輸入狀態囉.- Private Sub TextBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
- 'SendKeys ("^+0") ' 可不用加此行, 因為我最初是設定切換英數的快速鍵為 Ctrl + Shift + 0 , 而這個已可由 TextBox1.IMEMode = fmIMEModeOff 來實現了.
- End Sub
- Private Sub TextBox2_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
- SendKeys ("^+1")
- End Sub
- Private Sub TextBox3_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
- SendKeys ("^+3")
- End Sub
- Private Sub UserForm_Initialize()
- TextBox1.IMEMode = fmIMEModeOff ' 英數
- TextBox2.IMEMode = fmIMEModeOn ' 倉頡
- TextBox3.IMEMode = fmIMEModeOn ' 注音
- End Sub
複製代碼
如何在TextBox1中顯示輸入法-a.zip (9.66 KB)
|
-
1
評分人數
-
|