§4 画像(ピクチャコントロール)の利用 VB6 | |
(3) 画像のコピー |
1. 画像のコピー
ピクチャボックスに別のピクチャボックスの画像をコピーする。
花見の画像を配置したフォームにコマンドボタン1つ(Command2)とピクチャボックス1つ(Picture2)を配置する。
Picutre2のAutoRedrawプロパティをTrueに設定しておく。
ボタン2をクリックするとPicture1の画像をPicture2にコピーする。プログラムは次の通りである。
・プログラムリスト
Private Sub Command2_Click() Picture2.Picture = Picture1.Picture End Sub
コピーといっても特別な処理が必要なわけではない。画像を記憶しているプロパティの値を代入するだけである。
実行して、ボタン1、ボタン2の順にクリックする。
花見の画像はコピーされたが、描画した円がコピーされていない。
実は、Pictureプロパティには花見の画像のファイル名が記憶されているだけで、画像データが記憶されているわけではない。したがって、プログラムの代入はファイル名をコピーしているに過ぎない。
では、花見の画像に円が描画された画像データはどこにあるのか。画像データはImageプロパティに記憶されている。
ピクチャボックス1つ(Picture3)を追加して、AutoRedrawプロパティをTrueに設定する。プログラムは次のように追加する。
・プログラムリスト
Private Sub Command2_Click() Picture2.Picture = Picture1.Picture Picture3.Picture = Picture1.Image '←追加 End Sub
実行するとPicture3には花見の画像に円が描画された画像が表示される。
スピードが要求されるときは、API関数を利用するとよい。
(3) 画像のコピー | |
Copyright © 2002 Hiroshi Masuda |