ふりがな(半角のカタカナ)自動入力機能の設定
ふりがな自動入力機能は、GcImeコンポーネントが担当します。このコンポーネントは、InputMan for Windows Forms 5.0Jのコンポーネントはもちろん、標準のコントロールやサードパーティ製のコントロールに対し、自動ふりがな入力機能を提供します。
例えば、GcTextBoxコンポーネントを配置し、さらにGcImeコンポーネントをフォームに配置すると、GcTextBoxコンポーネントに「ReadingStringOutput」プロパティが追加されます。このプロパティを展開し、「TargetControl」でふりがなを入力したいコントロールを指定すると、指定されたコントロールに半角カタカナのふりがなが自動的に入力されます。
このプログラムでは、「氏名」を入力するGcTextBoxコンポーネント「GcTextBox2」の「ReadingStringOutput」プロパティに、ふりがなを表示するコンポーネントとして「GcTextBox1」を指定します。
すると、「GcTextBox2」に漢字で氏名を入力していくと、漢字が確定した時点でふりがなが「GcTextBox1」に入力されていきます。
このように、プロパティで入力対象のコンポーネントを指定するだけで、自動的にふりがなを入力してくれます。
なお、OutputModeプロパティを使用すると、ふりがなの入力方法を設定できます。デフォルトはAppendです。
項目 | 設定内容 |
Append | コントロールの内容の末尾にふりがなを追加します |
Replace | コントロールの内容を上書きしてふりがなを表示します |
GcTextBoxコンポーネントのサイドボタン機能の設定
GcTextBoxコンポーネントには、入力フィールドにボタンやスピンボタン、ドロップダウンボタンを設定することができます。今回は、「氏名」入力用のGcTextBoxコンポーネントにサイドボタンを1つ設定し、入力内容をクリアする処理を組み込んでみました。
サイドボタンのイベントハンドラを使うには、フォームエディタ上でサイドボタンをダブルクリックします。Clickイベントハンドラが作成されるので、ここに処理を記述します。
Imports GrapeCity.Win.Editors Public Class Form1 Private Sub SideButton1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles SideButton1.Click Me.GcTextBox1.Text = "" Me.GcTextBox2.Text = "" End Sub
private void sideButton1_Click(object sender, EventArgs e) { gcTextBox1.Text = ""; gcTextBox2.Text = ""; }
郵便番号-住所変換機能の設定
今度は、郵便番号を入力すると自動的に住所に変換して入力する機能を設定します。これも、プロパティを設定するだけで簡単に実現できます。さらに、プロパティの設定によって、住所にもふりがなを自動的に入力できます。使い方はとっても簡単で、GcAddressコンポーネントをフォームに配置すると、InputMan for Windows Forms 5.0Jの各入力コンポーネントに、「GcAddress1のFindAddressSetting」というプロパティが追加されます。
このプロパティを展開し、「AddressOutput」プロパティで変換した住所を出力するコンポーネントを指定し、「AddressReadStringOutput」プロパティにそのふりがなを出力するコンポーネントを指定するだけです。
また、「FindAddressMode」プロパティを使用すると、住所検索を郵便番号、電話番号、全国地方公共団体コード(JIS X 0401)のどれで行うのかを指定できます。
値 | 内容 |
0 | ByZipCode 郵便番号をキーとして使用 |
1 | ByPhoneNumber 電話番号をキーとして使用 |
2 | ByCityCode 全国地方公共団体コード(JIS X 0401)をキーとして使用 |
なお、「住所」用GcTextBoxコンポーネント(GcTextBox5)には、「クリア」サイドボタンに加え、「転送」サイドボタンを追加しています。
このボタンでは、名前と住所の入力内容をフォームForm2のラベルで表示する処理を組み込んでいます。
Private Sub SideButton2_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles SideButton2.Click Form2.Label2.Text = Me.GcTextBox1.Text Form2.Label3.Text = Me.GcTextBox2.Text Form2.Label5.Text = Me.GcTextBox3.Text Form2.Label7.Text = Me.GcTextBox4.Text Form2.Label9.Text = Me.GcTextBox5.Text Form2.Show() End Sub Private Sub SideButton3_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles SideButton3.Click Me.GcTextBox3.Text = "" Me.GcTextBox4.Text = "" Me.GcTextBox5.Text = "" End Sub
private void sideButton2_Click(object sender, EventArgs e) { Form2 fm2 = new Form2(); fm2.label2.Text = gcTextBox1.Text; fm2.label3.Text = gcTextBox2.Text; fm2.label5.Text = gcTextBox3.Text; fm2.label7.Text = gcTextBox4.Text; fm2.label9.Text = gcTextBox5.Text; fm2.Show(); } private void sideButton3_Click(object sender, EventArgs e) { gcTextBox3.Text = ""; gcTextBox4.Text = ""; gcTextBox5.Text = ""; }