ピクチャーボックス内の画像・文字の保存 |
ピクチャーボックスに表示・描画した画像・文字の保存 (087) | |
まず、AutoRedraw プロパティを True にしておきます。 AutoRedraw = True にしておかないとせっかく書いた絵等が他のフォームの後ろになった時等に消えてしまいます。又、ファイルへ保存ができません。但し、読み込んだイメージ等は消えません。 ピクチャーボックスに文字やラインやイメージ等を描画・表示しそれをファイルに保存し、保存したファイルを読み込んで他のピクチャーボックスに表示する、サンプルです。 Option Explicit 'SampleNo=087 WindowsXP VB6.0(SP5) 2002.05.17 Private Sub Form_Load() Form1.Move 0, 0, 8600, 5000 Picture1.Move 375, 225, 3690, 3240 Picture2.Move 4350, 225, 3690, 3240 End Sub Private Sub Command3_Click() 'PictureBoxに長方形・文字・円を描く 'ボックスを描き内部を明るいシアン色に塗りつぶす Picture1.Line (350, 170)-(3400, 510), QBColor(11), BF With Picture1 '描画したものを保存する場合Trueにする .AutoRedraw = True .ScaleMode = vbCharacters 'キャラクターモードに .CurrentX = 4 '4桁目 .CurrentY = 1 '1行目 .ForeColor = QBColor(12) .FontName = "MS 明朝" .FontSize = 11 .FontBold = True Picture1.Print "花ちゃんのホームページ" .ScaleMode = vbTwips '既定値戻す End With Dim CX As Long Dim CY As Long Dim Radius As Long Dim Limit As Long With Picture1 .ScaleMode = 3 ' 単位をピクセルに設定します。 CX = .ScaleWidth \ 2 ' X 座標を設定します。 CY = .ScaleHeight \ 2 ' Y 座標を設定します。 End With CY = CY + 17 Limit = 75 For Radius = 0 To Limit Step 3 ' 半径を設定します。 '色をランダムに設定して円を描く Picture1.Circle (CX, CY), Radius, RGB(Rnd * 255, Rnd * 255, Rnd * 255) Next Radius End Sub Private Sub Command1_Click() '表示データをビットマップ形式のデータで保存 SavePicture Picture1.Image, "MyBmp.bmp" End Sub Private Sub Command2_Click() '保存したデータを読込表示 Set Picture2.Picture = LoadPicture("MyBmp.bmp") End Sub |
2002/05/17