[ImageList][Tips] イメージサイズを設定する
0ImageListコントロールにイメージを追加すると、サイズは16×16となります(既定値)。
イメージサイズを変更したい場合はSizeプロパティを設定します。ただし最大サイズは256×256となりますので注意が必要です。
下記は、ImageListのイメージサイズを256×256に設定する例です。
VBの例
' フォームロード時の処理
Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
'イメージサイズを256x256に設定する
ImageList1.ImageSize = New Size(256, 256)
End Sub
C#の例
// フォームロード時の処理
private void Form3_Load(object sender, EventArgs e)
{
// イメージサイズを256x256に設定する
imageList1.ImageSize = new Size(256, 256);
}
[ImageList][Tips] イメージを使用する
0ImageListコントロールに登録されているイメージを使用するには主に2つの方法があります。
- ImageListのDrawメソッドを使用する
- ButtonコントロールやListViewコントロールが持つImageListプロパティ、SmallImageListプロパティ、LargeImageListプロパティなどに指定しコントロールに表示する
まずDrawメソッドですが、下記に示す例のようにGraphics上の指定された位置に、描画したいイメージのインデックスを指定して描画を行います。
次に、コントロールで描画する場合ですが、使用するコントロールによってImageListを指定できるプロパティが異なります。
たとえば、Buttonコントロールの場合はImageListプロパティ、ListViewコントロールの場合はSmallImageListプロパティ、LargeImageListプロパティ、StateImageListプロパティなどがあります。~ImageListというプロパティであればImageListを指定できると考えてよいでしょう。
コントロールでImageListのイメージを使用する場合はImageIndexプロパティに使用したいイメージのインデックスを指定します。
下記はImageListのイメージを使用する例です。
[イメージを描画]ボタンをクリックすると、フォーム上にアイコンを描画するとともに、リストビュー各項目にもイメージを表示します。
VBの例
' [イメージを描画]ボタンクリック時の処理
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
'ウィンドウハンドルの作成
Dim g As Graphics = Graphics.FromHwnd(Me.Handle)
'イメージリストにあるイメージをフォームに描画する
ImageList1.Draw(g, New Point(110, 12), 0)
ImageList1.Draw(g, New Point(140, 12), 1)
'★★★リストビューに表示する小さなアイコンにImageList1を設定する★★★
ListView1.SmallImageList = ImageList1
ListView1.View = View.Details
'リストビューに列を作成する
ListView1.Columns.Add("アイコン")
ListView1.Columns.Add("名前")
'リストビューに追加する1つ目の項目を作成
Dim item1 As New ListViewItem
item1.ImageIndex = 0 '★★★ImageListの1つ目のイメージを使用する★★★
item1.SubItems.Add("Camera")
'リストビューに追加する2つ目の項目を作成
Dim item2 As New ListViewItem
item2.ImageIndex = 1 '★★★ImageListの1つ目のイメージを使用する★★★
item2.SubItems.Add("PC")
'リストビューに項目を追加する
ListView1.Items.Add(item1)
ListView1.Items.Add(item2)
End Sub
C#の例
// [イメージを描画]ボタンクリック時の処理
private void button1_Click(object sender, EventArgs e)
{
// ウィンドウハンドルの作成
Graphics g = Graphics.FromHwnd(this.Handle);
// イメージリストにあるイメージをフォームに描画する
imageList1.Draw(g, new Point(110, 12), 0);
imageList1.Draw(g, new Point(140, 12), 1);
// ★★★リストビューに表示する小さなアイコンにImageList1を設定する★★★
listView1.SmallImageList = imageList1;
listView1.View = View.Details;
// リストビューに列を作成する
listView1.Columns.Add("アイコン");
listView1.Columns.Add("名前");
// リストビューに追加する1つ目の項目を作成
ListViewItem item1 = new ListViewItem();
item1.ImageIndex = 0; // ★★★ImageListの1つ目のイメージを使用する★★★
item1.SubItems.Add("Camera");
// リストビューに追加する2つ目の項目を作成
ListViewItem item2 = new ListViewItem();
item2.ImageIndex = 1; // ★★★ImageListの1つ目のイメージを使用する★★★
item2.SubItems.Add("PC");
// リストビューに項目を追加する
listView1.Items.Add(item1);
listView1.Items.Add(item2);
}
[ImageList][Tips] イメージを追加する
0ImageListコントロールにはイメージを複数のイメージを格納することができます。
プロパティウィンドウからイメージを追加する場合は下記手順にて行います。
1.Imagesプロパティ欄の右側に表示される[...]ボタンをクリックする
![[...]ボタンをクリック](http://blog.hiros-dot.net/wp-content/uploads/2012/01/Image01-1.png)
2.イメージコレクションダイアログが表示されるので[追加]ボタンをクリックする
![[追加]ボタンをクリック](http://blog.hiros-dot.net/wp-content/uploads/2012/01/Image01-2.png)
次にコードからイメージを追加する方法ですが、ImagesプロパティのAddメソッドを使用します。
Addメソッドの引数にはImageクラスのFromFileメソッドを使用してイメージを指定します。
VBの例
' フォームロード時の処理
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
'イメージを追加する
ImageList1.Images.Add(
Image.FromFile("C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\VS2010ImageLibrary\1041\VS2010ImageLibrary\Objects\ico_format\WinXP\blankcd.ico"))
End Sub
C#の例
// フォームロード時の処理
private void Form1_Load(object sender, EventArgs e)
{
// イメージを追加する
imageList1.Images.Add(
Image.FromFile(@"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\VS2010ImageLibrary\1041\VS2010ImageLibrary\Objects\ico_format\WinXP\blankcd.ico"));
}
[HelpProvider][Tips] ポップアップヘルプを表示する
0HelpProviderを使用すると、ポップアップヘルプを表示することができます。
ポップアップヘルプは、タイトルバーにある[?]ボタンをクリックした後、目的のコントロールをクリックするか、コントロールを選択状態にしてから[F1]キーを押すことで表示できます。
はじめに[?]ボタンを表示する方法ですが、HelpButtonプロパティにTrueを設定します。このときフォームの最小化ボタン(MinimizeBoxプロパティ)と最大化ボタン(MaximizeBoxプロパティ)にFalseを設定する必要があることに注意してください。
次に、コントロールに割り当てるヘルプ文字列ですが、SetHelpStringメソッドで設定します。第1引数にはヘルプ文字列を設定するコントロールを、第2引数にはヘルプ文字列を指定します。
下記はポップアップヘルプを表示する例です。
Buttonコントロール、CheckBoxコントロール、RadioButtonコントロールにヘルプ文字列を設定しています。
VBの例
' フォームロード時の処理
Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
'最小化ボタンと最大化ボタンを無効にする
Me.MinimizeBox = False
Me.MaximizeBox = False
'ヘルプボタンを表示する
Me.HelpButton = True
'コントロールにヘルプ文字列を設定する
HelpProvider1.SetHelpString(Button1, "これはButton1です")
HelpProvider1.SetHelpString(CheckBox1, "これはCheckBox1です")
HelpProvider1.SetHelpString(RadioButton1, "これはRadioButton1です")
End Sub
C#の例
// フォームロード時の処理
private void Form3_Load(object sender, EventArgs e)
{
// 最小化ボタンと最大化ボタンを無効にする
this.MinimizeBox = false;
this.MaximizeBox = false;
// ヘルプボタンを表示する
this.HelpButton = true;
// コントロールにヘルプ文字列を設定する
helpProvider1.SetHelpString(button1, "これはbutton1です");
helpProvider1.SetHelpString(checkBox1, "これはcheckBox1です");
helpProvider1.SetHelpString(radioButton1, "これはradioButton1です");
}
[XBOX] ディズニーランド・アドベンチャーズ
0XBOX Kinect ディズニーランド・アドベンチャーズは、家にいながらにして米国カリフォルニア州アナハイムのディズニーランド・パーク18を堪能できるという、ディズニーファンにはたまらないゲームになっています。
普段では独り占めできないミッキーマウスに会い、指令を受け取って行動します。
画面上に行き先を表すラインが出るのはいいのですが、自分の操作が悪いのかKinectが悪いのか分かりませんが思うように動かせません(TT)
しかし、目的地にたどりついた後はうまいことプレイができました♪
とりあえず雪山で遊んでみましたが、なかなか楽しいですね。
こういうところはコントローラいらずのKinectはさすがといったところです。
出会えるキャラクターも40種類以上ということで、できればコンプリートしたいところです。
それから、アトラクションは18種類あるとのことです。
日本でもおなじみのジャングルクルーズ、ビッグサンダーマウンテンなどもあるので、ディズニーファンにはたまらないゲームとなっています。
寒くて外に出たくないという方は、是非これでディズニー体験をしてみてはいかがでしょうか?
※「Microsoft MVP 向け “ディズニーランド・アドベンチャーズ” レビューキャンペーンに参加し、本ソフトのレビューを行っています」



