麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Delphi > 正文

DELPHI下漢字輸入法的編程及使用

2019-11-18 18:48:28
字體:
來源:轉載
供稿:網友

許多WINDOWS應用程序的中西文錄入界面中,中西文的錄入需要反復切換漢字輸入法,使用起來非常繁瑣。筆者在利用DELPHI開發某MIS的過程中,找到了一種比較簡捷的解決辦法。

  本文設計環境為DELPHI CLIENT/SERVER SUIT VER3.0(以下簡稱DELPHI3.0),中文WINDOWS’95。

  一、DELPHI3.0下Imename 、Imemode屬性

  在DELPHI3.0中Tedit、Tmemo、TmaskEdit等編輯元件在應用程序中經常使用,這三種元件都具有Imename、Imemode屬性,Imename屬性是輸入法名稱,在對象觀察器中對應一包括當前系統中所有漢字輸入法的下拉組合框,Imemode屬性是輸入法模式,在對象觀察器中也對應一下拉組合框,組合框中包含imClose、imOpen、imChinese、imDontCare、imSAlpha、imAlpha六項內容:

   imClose 表示輸入法處于關閉狀態。

   ImOpen 表示輸入法處于打開狀態。

   ImChinese 表示處于中文輸入法狀態。

   ImDontCare 表示若輸入法處于關閉狀態,則打開最近一次

   使用過的輸入法。

   ImSAlpha 表示輸入處于半角狀態。

   ImAlpha 表示輸入處于全角狀態。

  二、DELPHI下漢字輸入法的編程

  在DELPHI3.0中,中西文錄入界面中牽涉輸入的元件都具有Imename、Imemode屬性。在設計錄入界面表單時,對其中每一元件這二種屬性賦值,就可以在元件獲得焦點時,系統自動打開或關閉你所設定的漢字輸入法。但這種編程方法,對用戶來說一點靈活性也沒有,若系統所設定的輸入法不是其所擅長的,他們只好再通過WINDOWS’95的輸入法選擇器重新進行選擇。

  筆者通過在Form下放置一標簽及下拉組合框,比較靈活的解決了這個問題,示例中的Forma共放置了四個Label、二個Edit 、一個ComboBox、Memo及Button。以下為示例說明:

  1、在DELPHI中選擇File菜單下的New application生成一新的應用程序。設定新窗體Form1的屬性

   Caption=輸入法編程示例

  2、在Form1中添加一兩個標簽Label1、Label2、Label3及編輯框Edit1、Edit2、Memo1,設定其屬性

   Label1.Caption=中文輸入編輯框

   Label1.Font.Size=12

   Label2.Caption= 西文輸入編輯框

   Label2.Font.Size=12

   Label3.Caption= 中文多行文本編輯器

Label3.Font.Size=12

   Edit1.ImeMode=ImOpen

   Edit2.ImeMode=ImDontCare(缺省值)

   Memo1.ImeMode=ImOpen

  在編程時,對輸入西文或西文為主的元件ImeMode屬性一般設為缺省值即可;對輸入中文或中文為主的元件,ImeMode屬性一般設為Imopen,而ImeName屬性值在程序運行時由用戶設定 ,而此方法的靈活性正在于此。另外,將Edit1.Text、Edit2.Text、Memo1.Lines的值設為空。

  3、在Form1中添加一標簽Label4,設定其屬性:

   Caption = 選擇最喜歡的輸入法

   Font.Size=12

   Font.Color=紅色

  4、在Form1中添加一下拉組合框Combobox1,在對象觀察器OBJECT INPECTOR中選擇事件列EVENT,雙擊OnDropDown,對此事件編程,寫入以下代碼:

   ComboBox1.Items.CommaText:=Screen.Imes.CommaText;

  以便將中文 WINDOWS’95中已安裝的漢字輸入法添加到下拉組合框中,此處巧妙地利用了TSCREEN類的IMES特性,而IMES特性本身又是一個TSTRING類,其屬性Commatext 包含了Windows’95已安裝的漢字輸入法,將其直接賦值給ComboBox1的相應屬性。否則,如果直接編輯ComboBox1的屬性Items,添加漢字輸入法名稱,會在應用程序發布時,因用戶機器漢字輸入法的不確定性,造成應用程序的不通用。

  5、再在對象觀察器中雙擊OnExit事件,寫入以下代碼:

   Edit1.Imename:=ComboBox1.Text;

   Memo1.Imename:=ComboBox1.Text;

   6、 在Form1中添加一命令按鈕Button1,設置其屬性:

   Caption=退 出

   Font.Size=12

   雙擊此命令按鈕,對其Click事件編程,寫入以下程序:

   Close;

   7、整個示例程序設計過程完成,保存此應用程序及表單,此時編譯、運行,其界面如下:
  

   首先,利用下拉組合框選擇你所喜歡的漢字輸入法,將光標移到中文輸入編輯框中,會發現你選擇的漢字輸入法自動在屏幕上出現,再將光標移到西文輸入編輯框中,漢字輸入法自動關閉,如果將光標放到中文多行文本編輯器中,已選擇的漢字輸入法又自動出現。


  三、結束語

   從上面的程序代碼可以出,在應用程序的錄入界面中,設置一輸入法選擇下拉組合框,并讓其控制錄入界面中所有可輸入項的Imename屬性,既可以做到在中西文錄入時不用進行錄入法的來回選擇,更可以做到讓用戶選擇其最喜歡的漢字輸入法,錄入界面對用戶來講非常友好、方便、快捷。


上一篇:Delphi編程技巧實例

下一篇:delphi運行錯誤信息

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 桥本有菜免费av一区二区三区 | 国产一级免费在线视频 | 欧美中文字幕在线视频 | 视频一区二区三区视频 | 日本羞羞影院 | 欧美电影在线观看 | 日韩激情 | 爱看久久 | 成人在线视频在线观看 | 亚洲日本欧美 | 色视频在线观看 | 在线播放免费播放av片 | 日韩毛片毛片久久精品 | 西川av在线一区二区三区 | 粉嫩av一区二区三区四区在线观看 | 日韩视频在线免费 | 九九热在线视频观看 | 久久视讯| 欧美精品色精品一区二区三区 | 欧美视频国产 | 最新午夜综合福利视频 | 久草在线资源福利站 | 成人在线免费观看网址 | 一区二区三级视频 | 美女黄网站免费观看 | hdbbwsexvideo | 欧美性色黄大片www 操碰网 | 色综合久久久久久久久久久 | 亚洲一级片在线观看 | 亚洲日本韩国在线观看 | 国产在线1区 | 主播粉嫩国产在线精品 | 一区二区三区在线视频观看58 | 97超碰资源站 | qyl在线视频精品免费观看 | 九色 在线 | 国产91大片 | 成人男女啪啪免费观看网站四虎 | 美女久久| 日韩视频在线观看免费视频 | 高清国产免费 |