MESCIUS InputMan for Windows Forms 12.0J
住所情報の取得

住所検索コンポーネントの住所情報の取得方法について解説します。

JPAddress for Windows Formsの準備

郵便番号コントロールの機能は、「JPAddress for Windows Forms(以下、JPAddress)」を利用して実現されており、検索機能を利用するためにはJPAddressのインストールが必要です。また、検索機能を使用するためには、JPAddressのGcJPAddressコンポーネントをページに配置する必要があります。


詳細については「JPAddress for Windows Forms との連携」を参照してください。

検索の対象と出力用コントロール

住所検索コンポーネントは拡張プロバイダとして動作します。住所検索コンポーネントをフォームに追加すると、フォーム上に配置されたコントロールが拡張され、SetAddressOutputSetting メソッドが入力コントロールのプロパティグリッドに 「AddressOutputSetting プロパティ」として追加されます。

AddressOutputSetting プロパティはAddressOutputSetting クラスを参照し、このクラスの以下のプロパティを設定することで、出力用コントロールおよび動作の設定を行うことができます。

コードによって検索の対象と出力用コントロールを設定するには、以下のように SetAddressOutputSetting メソッドを使用します。

Imports GrapeCity.Win.Editors

' AddressOutputSettingオブジェクトを作成します。 
Dim AddressOutputSetting1 As AddressOutputSetting = New AddressOutputSetting()

' AddressOutputSettingオブジェクトに検索の対象と出力用コントロールを設定します。 
AddressOutputSetting1.AddressQuerymode = AddressQuerymode.ByZipCodeForAll
AddressOutputSetting1.AddressOutput = GcTextBox2
AddressOutputSetting1.AddressKanaOutput = GcTextBox3
AddressOutputSetting1.ZipCodeOutput = GcTextBox4
AddressOutputSetting1.JISCodeOutput = GcTextBox5
AddressOutputSetting1.ClearTarget = True
AddressOutputSetting1.SplitAreaDetails = True
AddressOutputSetting1.GenerateCompanyAddressKana = True

' GcAddressにAddressOutputSettingオブジェクトを設定します。 
GcAddress1.SetAddressOutputSetting(GcTextBox1, AddressOutputSetting1)
using GrapeCity.Win.Editors;

// AddressOutputSettingオブジェクトを作成します。 
AddressOutputSetting addressOutputSetting1 = new AddressOutputSetting();

// AddressOutputSettingオブジェクトに検索の対象と出力用コントロールを設定します。 
addressOutputSetting1.AddressQuerymode = AddressQuerymode.ByZipCodeForAll;
addressOutputSetting1.AddressOutput = gcTextBox2;
addressOutputSetting1.AddressKanaOutput = gcTextBox3;
addressOutputSetting1.ZipCodeOutput = gcTextBox4;
addressOutputSetting1.JISCodeOutput = gcTextBox5;
addressOutputSetting1.ClearTarget = true;
addressOutputSetting1.SplitAreaDetails = true;
addressOutputSetting1.GenerateCompanyAddressKana = true;

// gcAddressにAddressOutputSettingオブジェクトを設定します。 
gcAddress1.SetAddressOutputSetting(gcTextBox1, addressOutputSetting1);
メソッドによる住所情報の取得

住所検索コンポーネントでは以下のメソッドを提供しており、これらを利用して対象の住所情報を取得することが可能です。


' 郵便番号から住所情報を取得します。
GcListBox1.DataSource = GcAddress1.GetAddress("1638001", True, GrapeCity.Win.Editors.ZipCodeQueryMode.Both, True)
' 市外局番から都道府県市区町村情報を取得します。
GcListBox2.DataSource = GcAddress1.GetAddressFromPhoneCode("03", False)
' 住所から郵便番号を取得します。
GcListBox3.DataSource = GcAddress1.GetZipCode("東京都渋谷区渋谷", GrapeCity.Win.Editors.ZipCodeQueryMode.GeneralZipCode)
// 郵便番号から住所情報を取得します。
GcListBox1.DataSource = gcAddress1.GetAddress("1638001", true, GrapeCity.Win.Editors.ZipCodeQueryMode.Both, true);
// 市外局番から都道府県市区町村情報を取得します。
GcListBox2.DataSource = gcAddress1.GetAddressFromPhoneCode("03", false);
// 住所から郵便番号を取得します。
GcListBox3.DataSource = gcAddress1.GetZipCode("東京都渋谷区渋谷", GrapeCity.Win.Editors.ZipCodeQueryMode.GeneralZipCode);

上記サンプルコードの実行結果は次のようになります。

GcListBox1 :

GcListBox2 :

GcListBox3 :
AddressOutputtingイベントの利用

AddressOutputting イベントをハンドルすることで検索結果を取得することができます。検索結果をコントロールに出力しないでメッセージで表示するなどといった用途に対応できます。

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    ' AddressOutputSettingオブジェクトを作成します。  
    Dim AddressOutputSetting1 As GrapeCity.Win.Editors.AddressOutputSetting = New GrapeCity.Win.Editors.AddressOutputSetting()
    AddressOutputSetting1.AddressQuerymode = GrapeCity.Win.Editors.AddressQuerymode.ByZipCodeForAll
    AddressOutputSetting1.SplitAreaDetails = True
    AddressOutputSetting1.GenerateCompanyAddressKana = True

    ' GcAddressにAddressOutputSettingオブジェクトを設定します。  
    GcAddress1.SetAddressOutputSetting(GcMask1, AddressOutputSetting1)

    GcMask1.Value = "1638001"

    ' AddressOutputtingイベントが発生します。
    AddHandler GcAddress1.AddressOutputting, AddressOf GcAddress1_AddressOutputting
End Sub

Private Sub GcAddress1_AddressOutputting(sender As System.Object, e As GrapeCity.Win.Editors.AddressOutputtingEventArgs) Handles GcAddress1.AddressOutputting
    ' 出力された住所を表示します。
    MessageBox.Show(e.OutputAddress)
End Sub
private void Form1_Load(object sender, EventArgs e)
{
    // AddressOutputSettingオブジェクトを作成します。  
    GrapeCity.Win.Editors.AddressOutputSetting addressOutputSetting1 = new GrapeCity.Win.Editors.AddressOutputSetting();
    addressOutputSetting1.AddressQuerymode = GrapeCity.Win.Editors.AddressQuerymode.ByZipCodeForAll;
    addressOutputSetting1.SplitAreaDetails = true;
    addressOutputSetting1.GenerateCompanyAddressKana = true;

    // gcAddressにAddressOutputSettingオブジェクトを設定します。  
    gcAddress1.SetAddressOutputSetting(gcMask1, addressOutputSetting1);

    gcMask1.Value = "1638001";

    // AddressOutputtingイベントが発生します。
    gcAddress1.AddressOutputting += new EventHandler<GrapeCity.Win.Editors.AddressOutputtingEventArgs>(gcAddress1_AddressOutputting);
}

private void gcAddress1_AddressOutputting(object sender, GrapeCity.Win.Editors.AddressOutputtingEventArgs e)
{
    // 出力される住所を表示します。
    MessageBox.Show(e.OutputAddress);
}
関連トピック

 

 


© MESCIUS inc. All rights reserved.