コンボボックスにアイコンなどのイメージを表示させるには


ActiveXコントロールを使用して、コンボボックスのアイテムにイメージを表示する方法を紹介します。コンボボックスにイメージを表示するには、イメージリストコントロール(ImageList Control)とイメージコンボボックスコントロール(ImageComboBox Control)を使用します。

注)ここで紹介するActiveXコントロールを使用するには、Visual Basic 6.0をインストールする必要があります。 


  1. Access 2000を起動して新規データベース(MyDB.mdb)を作成します。

  2. データベースウインドウのフォームタブをクリックしたら新規作成のボタンをクリックして、デザインビューを表示させます。

  3. メニューからツールボックスを表示させてコントロールの選択アイコンをクリックします。ActiveXコントロールの一覧から、Microsoft ImageComboBox Control, version 6.0をクリックしてフォーム上位中央に貼り付けます。同様の手順で、Microsoft ImageList Control, version 6.0をクリックしてフォーム左下に貼り付けます。

    図1-ActiveXコントロールの一覧リスト

    イメージコンボボックスの左にラベルを作成して、表題Select Access Object: を入力します。

    図2-フォームにImageComboBoxとImageListコントロールを貼り付けた例


  4. イメージリストに登録するイメージTables.gif, Queries.gif, Forms.gif, Reports.gif, Modules.gifの名称で保存します。

  5. イメージリストコントロールをダブルクリックして、プロパティを表示します。全体タブをクリックしてイメージのサイズ 16 x 16 をチェックします。次に、イメージタブをクリックしたら、ピクチャの挿入ボタンをクリックしてテーブル、クエリ、フォーム、レポート、モジュールのイメージを登録します。このとき、キー(K)として、Tables, Queries, Forms, Reports, Modules を入力します。最後に、OKをクリックしてプロパティを閉じます。


    図3-イメージリストコントロールにオブジェクトのアイコンを登録した例

     

  6. フォームのイメージコンボボックスコントロールをダブルクリックして、プロパティを表示させます。全般タブをクリックしたら、ImageList(I)のコンボボックスからイメージリストコントロール名 ctlImageListを選択します。Text(X)"Select -------" を入力します。OKをクリックしてプロパティを閉じます。


    図4-イメージコンボボックスのプロパティを設定


  7. フォームのプロパティを表示させて、読み込み時のイベントにリスト1のコードをコピー&ペーストします。


    リスト1-フォームの読み込み時のイベント処理
     Private Sub Form_Load()
      With ctlImageCombo.ComboItems
        ' Add Index, ItemName, ListBox Display Name, Image Key Name.
        .Add 1, "Tables", "Tables", "Tables"
        .Add 2, "Queries", "Queries", "Queries"
        .Add 3, "Forms", "Forms", "Forms"
        .Add 4, "Reports", "Reports", "Reports"
        .Add 5, "Modules", "Modules", "Modules"
      End With
    End Sub 


  8. イメージコンボボックスのクリック時のイベントにリスト2のコードをコピー&ペーストします。クリック時のイベントは、イメージコンボボックスのプロパティに表示されませんので、VBE(Visual Basic Editor)を起動してイベントリストからClickを選択します。

    リスト2-イメージコンボボックスのクリック時のイベント処理
    Private Sub ctlImageCombo_Click()
      MsgBox "Selected " & Me.ctlImageCombo.SelectedItem, _
        vbInformation, "Image Combo Example"
    End Sub


  9. フォームをビューモードに切り替えて、イメージコンボボックスをクリックして一覧から Forms のアイテムをクリックします。MsgBoxに Selected Forms が表示されるか確認します。


    図5-イメージコンボボックスから Forms を選択した例


  10. フォームを frmImageComboBox の名称で保存します。