[リストへもどる]
一括表示

投稿時間:2002/12/19(Thu) 17:38
投稿者名:ざね
Eメール:
URL :
タイトル:
画像の連番保存するには?
こんばんは。はじめて書きこませていただきます。SavePicture関数を用いて、ピクチャボックスに表示された画像を保存するアプリケーションを作りたいのですが、

Private Sub Command1_Click()
    Set Picture1.Picture = Clipboard.GetData
    SavePicture Picture1.Image, "c:\Windows\デスクトップ\pic.bmp"
End Sub

でpic.bmpをフォルダに保存して、その後も同じフォルダにボタンを押す毎pic1.bmp,pic2.bmp,pic3.bmp...というように連番をつけて保存できるようにしたいのですが、どうすればいいのかわかりません。どなたかご教授よろしくお願いします。

投稿時間:2002/12/19(Thu) 18:48
投稿者名:これ
URL :
タイトル:
Re: 画像の連番保存するには?
> でpic.bmpをフォルダに保存して、その後も同じフォルダにボタンを押す毎pic1.bmp,pic2.bmp,pic3.bmp...というように連番をつけて保存できるようにしたいのですが、どうすればいいのかわかりません。どなたかご教授よろしくお願いします。

こんばんは。
まず、連番用の変数を用意します。
1)Dir関数やFileSystemObjectでファイルの存在検査をします。
2)ファイルがあったとき:連番用の変数を+1したものを
 ファイル名にくっつけて再度 1)へ
  ファイルがないとき:保存処理を実行

とりあえず保存処理の時は、パスとファイル名は分けて持っておくのが吉かと。

いまちょっと実行環境がないので未検証ですが

SavePath = "c:\Windows\デスクトップ\"
SaveFileName = "pic"
SeqNo = 0
' 存在検査 & 連番付加
Do Until Dir$(SavePath &  SaveFileName & ".bmp") = ""
    SeqNo = SeqNo + 1
    SaveFileName = SaveFileName & cStr(SeqNo)
Loop
'保存処理
SavePicture Picture1.Image, SavePath & SaveFileName & ".bmp"
こんな感じでしょうか?
同名ファイルが増えてくると時間が掛かるのが難点ですけど・・・

投稿時間:2002/12/20(Fri) 11:34
投稿者名:ざね
Eメール:
URL :
タイトル:
Re^2: 画像の連番保存するには?
これ様、私のような初心者にわざわざソースまで考えてくださってありがとうございました。

そのソースを利用してみましたところ、無事連番で保存できるようになりました。
私にはもっと精進が必要のようです。今思いついたのですが、現在の年月日、時刻をとってきてファイ
ル名にする、という手もありますね。
またこの掲示板で質問させていただくことがあるかと思いますが、そのときはよろしくお願いします。