VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2002/09/15(Sun) 15:09
投稿者よねKEN
Eメール
URLhttp://www5b.biglobe.ne.jp/~yone-ken/
タイトルRe^6: ピクチャボックスの内容が保存できない

> > > SavePicture Picture1, CommonDialog1.FileName これだったらエラーが
> > > 発生して止まるはずだが?
> >
> > この記述そのものは文法にも則った正しい書き方です。
>
> そうなのですか?

SavePictureステートメントのヘルプには、
第一引数にはPictureプロパティ、Imageプロパティを指定できるとあります。(両方ともIPictureDisp型)
元質問には、bmpファイルを読み込んでいるともかかれていますので、
Pictureプロパティは設定されているので、エラーにはならず設定したbmpが保存されるだけですね。

> ただし、Picture Box に画像を読み込んでいないとエラーとなります。
>
> SavePicture Picture1.Image, CommonDialog1.FileName 
> こちらの場合はエラーが発生しません。

Debug.Print Picture1.Image.Handle
Debug.Print Picture1.Picture.Handle

を実行するとわかりますが、
Pictureプロパティは未設定時はGDIハンドルが割り当てられていないのでエラーになります。
Imageプロパティは最初から割り当てられています。

Imageプロパティの方に関してはヘルプの以下の部分でこのことが明記されていますね。
||Image プロパティの値は、AutoRedraw プロパティの設定とは関係なく存在します。
||AutoRedraw プロパティが真 (True) に設定されていて、描画されたグラフィックスが存在しない場合は、
||BackColor プロパティで設定された色とピクチャだけが表示されます。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -