c# DataGridView 全角

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Collections; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Runtime.InteropServices; namespace KySoft { public class ImeForm : System.Windows.Forms.Form { //聲明一些API函數 [DllImport("imm32.dll")] public static extern IntPtr ImmGetContext(IntPtr hwnd); [DllImport("imm32.dll")] public static extern bool ImmGetOpenStatus(IntPtr himc); [DllImport("imm32.dll")] public static extern bool ImmSetOpenStatus(IntPtr himc, bool b); [DllImport("imm32.dll")] public static extern bool ImmGetConversionStatus(IntPtr himc, ref int lpdw, ref int lpdw2); [DllImport("imm32.dll")] public static extern int ImmSimulateHotKey(IntPtr hwnd, int lngHotkey); private const int IME_CMODE_FULLSHAPE = 0x8; private const int IME_CHOTKEY_SHAPE_TOGGLE = 0x11; //重載Form的OnActivated protected override void OnActivated(EventArgs e) { base.OnActivated(e); IntPtr HIme = ImmGetContext(this.Handle); if (ImmGetOpenStatus(HIme)) //如果輸入法處於打開狀態 { int iMode = 0; int iSentence = 0; bool bSuccess = ImmGetConversionStatus(HIme, ref iMode, ref iSentence); //檢索輸入法信息 if (bSuccess) { if ((iMode & IME_CMODE_FULLSHAPE) > 0) //如果是全角 ImmSimulateHotKey(this.Handle, IME_CHOTKEY_SHAPE_TOGGLE); //轉換成半角 } } } } } 然後在自己要用的界面 public partial class frmMain : ImeForm 這樣

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章