No.3
- 回答日時:
>プロパティの値が不正
おそらく画像を読み込んでいないピクチャボックスを保存しようとしたためだと思います。
何か画像が読み込まれていたならば、エラーはでません。
もし、Picuterが存在しないピクチャボックスを保存するなら
Call SavePicture(Picture1.Image, "c:\test.bmp")
としてあげたらよいと思います。
この回答への補足
やってみたら保存はされましたが何も表示されてませんでした
ピクチャーボックスにはちゃんと描画されてます
あとできれば白黒で保存したいのですが出来ますか?
No.2
- 回答日時:
それじゃあ、印刷を。
'(General)(Declarations)
'APIの宣言
Option Explicit
Private Declare Function StretchBlt Lib "gdi32" _
(ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long _
, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long _
, ByVal dwRop As RasterOpConstants) As Long
'Picture1をクリックすると、プリンタでPicture1を印刷する。
Private Sub Picture1_Click()
Printer.PSet (0, 0), vbWhite '*1
StretchBlt Printer.hdc, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight _
, Picture1.hdc, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight _
, vbSrcCopy '*2
Printer.EndDoc
End Sub
********
(General)(Declarations)の中身については先の回答↓
http://www.okweb.ne.jp/kotaeru.php3?q=168025
と同じですね。
で、今回はピクチャーボックスをクリックしたときに、印刷するようにしてみました。
*1: APIを使って画像を転送する前に、一度プリンタを初期化しています。これより前に、Printer.Lineなどでプリンタに何か描画をしていれば、この行は無くても構いません。
*2: StretchBLTを使って、ピクチャーボックスの画像をプリンタに転送しています。
「StretchBLT」APIは、以下のように引数を指定します。
StretchBLT 複写先のオブジェクトのhDCプロパティ, 複写先のX座標, Y座標, 幅, 高さ, 複写元オブジェクトのhDCプロパティ, 複写元のX座標, Y座標, 幅, 高さ, 転送モード
転送モードについては、とりあえずは、vbSrcCopyを指定すると画像をコピーするっていうことだけ覚えておけばいいかと。
先の回答と同じく、質問等ありましたら補足などにお書きください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ボールが壁に当たって跳ね返る...
-
ピクチャボックスの使用方法
-
FlexGridで文字色を変更。
-
VB6でマウスのドラッグで範囲を...
-
VBA public変数はどのようなこ...
-
【VB6.0】 あるフォームから他...
-
[Excel2000]auto_closeを止めさ...
-
テキストボックスかラベル上の...
-
VB.NETでのイベントの途中終了
-
C#のループでtextboxに値を入れ...
-
【VB.NET】テキストボックスに...
-
visual basic初心者です。 visu...
-
エクセルVBAでテキストボッ...
-
アクセスできない保護レベルエ...
-
vbscript内にvbscriptを記述
-
タイムアウトする仕組みを作りたい
-
Functionの戻り値を配列にした...
-
レコードセットにnullの場合
-
subsequentとnextの違いってな...
-
テキストボックスに大文字を
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SavePictureで保存できない
-
Matlabでsin波を使って矩形波を...
-
FlexGridで文字色を変更。
-
マウスポインタの変更
-
VB6 ドラッグ&ドロップ
-
PictureBoxでのアニメーション...
-
グラフィックの表示について VB6
-
Matlab/SimulinkのChirp信号に...
-
もぐらたたきのプログラミング
-
文字間の幅の設定
-
画像処理について。(移動)
-
(VB)ピクチャボックスに表示し...
-
一次元静電粒子コードについて...
-
picture boxの画像をimageに上...
-
ボールが壁に当たって跳ね返る...
-
画像ファイルの高さと幅の取得
-
VBによる回帰直線のプログラム
-
C言語のOpenGLで複数のテクスチ...
-
SCALEの使い方教えてください
-
違いを教えてください。
おすすめ情報