• 締切済み

ピクチャーボックスやイメージに表示し、画像を保存する時に画像を移動させて保存する方法を教えて下さい。

開発環境はVB6.0です。 イメージに表示させた画像を保存する方法は Private Sub Command2_Click() 'Picture1.Refresh Call SavePicture(Image1, "z:\meibo\a\1.jpg") End Sub ですが、この場合イメージに表示させた画像は元の場所にあるままなので、保存場所は違いますが、同じ絵の画像が2枚になります。 そうならないように画像を移動させる方法を探しています。 ご存知の方いらっしゃいましたらよろしくお願いします。

みんなの回答

noname#140971
noname#140971
回答No.1

どーも、質問内容がよく理解出来ないのですが・・・。 LoadPicture、SavePicture と同じクラスのライブラリに MovePicture というのが無いのか? ということでしょうか? であれば、無いと思いますよ。 例えば、D:\Temp\<->C:\Temp\で画像を移動するには、私なら次のように書きます。 Private Sub Command1_Click()   Dim isOK As Boolean      If FileExists("D:\Temp\Test.bmp") Then     isOK = FileMove("D:\Temp\Test.bmp", "C:\Temp\Test.bmp")     If isOK Then       MsgBox "Test.bmp を移動しました!"     End If   End If End Sub Private Sub Command2_Click()   Dim isOK As Boolean      Call SavePicture(Image1, "D:\Temp\Test.bmp")   If FileExists("C:\Temp\Test.bmp") Then     isOK = DeleteFile("C:\Temp\Test.bmp")     If isOK Then       MsgBox "Test.bmp を移動しました!"     End If   End If End Sub Microsoft Runtime Scrpting を参照させる必要があります。 その上で、FileExists、FileMove、DeleteFile の類の関数を用意します。 Dir、Kill も使えますが、推奨されてはいません。 こういうことなのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ピクチャーボックスやイメージに表示せずに画像を保存する方法を教えて下さい。

    開発環境はVB6.0です。 説明べたなので箇条書きで記入しました。 (1)ボタンを押す (2)Dドライブの中にあるJPGファイル(複数)をZドライブにコピー(もしくは移動) コピーでも移動でもどちらでもかまいませんが、なんせ異なったドライブにJPGファイルを写す方法を探しています。 VB上に画像を表示して保存する方法はわかりましたが、   Call SavePicture(Image1, "z:\meibo\a\1.jpg") これでは一気に保存することが出来ないのでとても困っています。 どなたか教えて下さい。よろしくお願いします。

  • Picture1.Printとしてもpicture1には何も表示されません

    Private Sub Form_Load() Call kansu End sub --------------------------- Private Sub kansu() a="文字" Picture1.Print a End sub --------------------------- のように、pictureコントロールに 文字を入れる処理をする関数を呼んでいるのですが、 Formが表示されてもpicture1には何も表示されません。 Msgboxを入れておくとメッセージボックスが出るので 呼び出されてはいるようなのです。 この関数をCommand1_Click()などから呼ぶとpicture1コントロールに ちゃんと表示されます。 どうすればよいのでしょうか?

  • ピクチャーボックス上に描いた円をうまく保存できません

    1.予めピクチャーボックスに画像を表示しておき 2.そのピクチャーボックス内に円を描き↓ Picture1.Circle (10, 10), 500 3.それら両方(1で予め表示しておいた画像と、2で描いた円)を保存しようと↓ SavePicture Picture1.Image, App.Path & "\Test.bmp" とすると、1で予め表示しておいた画像だけが保存され、2で描いた円が保存されません。 両方とも(1で予め表示しておいた画像の上に2で描いた円が表示されるように)保存したいのですが、どのようにすればよいでしょうか。 できれば具体的にサンプルコードなどをご教授いただけると大変ありがたく存じます。 恐れ入りますが、何卒よろしくお願いいたします(VB6.0)

  • ピクチャボックスに描画した画像の保存

    VB6.0にて、 http://www.uploda.org/uporg898462.jpg このようなものを作成しました。 折れ線グラフはプログラムにて後から描画したもの、 それ以外の目盛りなどは最初からピクチャボックスに描画してあるものです。 pic1,pic2は共にピクチャボックスです。 赤い線で囲まれたpic1を目盛り、グラフ、その他のテキストボックスや文字と共に画像として保存したいのですが、 SavePicture Pic1.Image, "C:\SaveTest2.bmp" とすると、pic1の大きさの、何も描画されていない真っ白な画像が保存されてしまいます。 また、SavePicture Pic2.Image, "C:\SaveTest2.bmp" (pic2の保存) とすると、折れ線グラフのみが描画され、目盛りは無くなった画像が保存されてしまいます。 2つのピクチャ共にAutoRedraw=Trueを設定しています。 pic1を上手く保存する方法は無いでしょうか? ご教授、お願いします。

  • 画像の一部を保存したい

    Picture1にある画像の一部(X1,Y1)-(X2,Y2)の範囲をファイルに保存したいのですがどうすればよいでしょうか。 Picture2.PaintPicture Picture1, 0, 0, , , X1, Y1, X2 - X1, Y2 - Y1 で画像の一部を一旦表示させてみたものの、 SavePicture Picture2.image, "save.bmp" では保存できません。 よい方法を教えてください。

  • Picture box の サイズを変更

    お世話になります。 VB6 でform1 上に Picture1 を貼付け ボタンを押すとPicture Boxのサイズを変更したいのですが 上手くサイズが変更されません。何か根本的な間違いでしょうか よろしくお願いします。 例: Yoko = 600 Tate = 480 Private Sub Command1_Click() With Picture1 .ScaleMode = 3 ' .Width = Yoko .Height = Tate End With End Sub

  • VBAで画像を表示する方法

    VBA初心者です。ExcelのVBAでプログラミングの練習をしています。 早速ですが質問させてください。 ユーザーフォーム上にコマンドボタンをクリックすることにより画像を表示させることはできるのですが、これをユーザーフォームを開いた瞬間に自動的に表示させる方法はないのでしょうか? ちなみに現在は以下のようにしています。 Private Sub CommandButton1_Click() Image1.Picture = LoadPicture(" ") End Sub インターネットで調べてみても見つからないので質問させてもらいました。分かりにくい説明でしたらすみません。

  • 画像のランダム表示

    初心者なのですがVisual Studio6.0でもぐらたたきゲームを利用した作品を現在制作しています。内容は決まった画像がランダムでImageコントロールに表示され、それをクリックできると画像が変わり得点加算、クリックできないと画像が変わり減点というゲームです。現在Imageコントロールに決まった画像を呼び出す処理が完成しました。そして追加機能としてクリックできたらボーナスポイントの画像をImageコントロールに何分の何かの確率で表示させたいのですがわからない状態です。ちなみに画像は私のパソコンのDドライブから呼び出して表示させています。 どういった命令文を打ったら良いのかわかる方教えて下さい。宜しくお願いします。 こちらがプログラムです。 Option Explicit Const MinImgAry = 0 Const MaxImgAry = 15 Const GameTime = 15 Dim HitFlg As Integer Dim TEN As Integer Dim HoleNum As Integer Dim IconAry(2) As String Private Sub Command1_Click() Command1.Enabled = False Option1.Enabled = False Option2.Enabled = False Option3.Enabled = False HitFlg = 0 TEN = 0 Text1.Text = Str(TEN) Timer1.Enabled = True Timer2.Enabled = True End Sub Private Sub Command2_Click() Form1.Show End Sub Private Sub Form_Load() Dim StrPath As String StrPath = App.Path If Right(StrPath, 1) <> "\" Then StrPath = StrPath + "\" End If IconAry(0) = "D:制作\5\画像1.bmp" IconAry(1) = "D:制作\5\画像2.bmp" IconAry(2) = "D:制作\5\画像3.bmp" End Sub Private Sub Image1_Click(Index As Integer) Image1(Index).Enabled = False HitFlg = -1 End Sub Private Sub Option1_Click() Timer1.Interval = 1000 End Sub Private Sub Option2_Click() Timer1.Interval = 800 End Sub Private Sub Option3_Click() Timer1.Interval = 500 End Sub Private Sub Timer1_Timer() Static CtlFlg As Integer Select Case CtlFlg Case 0 Image1(HoleNum).Enabled = False Image1(HoleNum).Visible = False HoleNum = Int((MaxImgAry - _ MinImgAry + 1) * Rnd + MinImgAry) Image1(HoleNum).Picture = _ LoadPicture(IconAry(0)) CtlFlg = 1 Image1(HoleNum).Visible = True Image1(HoleNum).Enabled = True Exit Sub Case 1 Image1(HoleNum).Enabled = False If HitFlg Then HitFlg = 0 Image1(HoleNum).Picture = _ LoadPicture(IconAry(2)) TEN = TEN + 1 Text1.Text = Str(TEN) Else Image1(HoleNum).Picture = _ LoadPicture(IconAry(1)) TEN = TEN - 1 Text1.Text = Str(TEN) End If CtlFlg = 0 Exit Sub End Select End Sub Private Sub Timer2_Timer() Static TimeCnt As Long TimeCnt = TimeCnt + 1 If TimeCnt <> GameTime Then Exit Sub End If Timer1.Enabled = False Timer2.Enabled = False MsgBox "おしまい" TimeCnt = 0 Command1.Enabled = True Image1(HoleNum).Enabled = False Image1(HoleNum).Visible = False Option1.Enabled = True Option2.Enabled = True Option3.Enabled = True End Sub

  • 画像をブランクつきでランダムに表示する方法が分かりません。

    VB6.0を使用してプログラミングを作成しているのですが、初心者のため行き詰っています。 前回も質問させていただいたのですが、ブランク(ピクチャーボックスの非表示)が間に入ることを想定していなかったため、改めて質問させていただきます。 作成したいプログラミングの内容は、8枚の写真を2秒間ずつ、1.5秒間のブランクを挿んで、ランダムに一枚ずつピクチャーボックスに表示するというものです。 RandomizeはByte型を使用したいのですが、コードがよくわかりません。 以下は、今までに出来上がっているコードです。 Private Declare Function timeGetTime Lib "winmm.dll" () As Long Private Sub Command1_Click() Command1.Visible = False PresentStimulus0 End Sub Private Sub PresentStimulus()  Picture1.Visible = True  Picture1.Picture = LoadPicture("C:\AAA.jpg")  nowtime = timeGetTime() 'milliseconds from windows startup  Do  DoEvents  Loop Until timeGetTime() - nowtime > 2000  Picture1.Visible = False  Do  DoEvents  Loop Until timeGetTime() - nowtime > 1500 End Sub C:\AAA.jpgの部分にランダムに8枚の画像を呼び出し、PresentStimulusを8回繰り返したいのですが・・・。 よろしくお願いいたします。

  • ピクチャーボックスの画像が欠けてしまいます。

    VB.NETとWinXPなのですが、 コマンドボタンを押して、ファイルダイアログボックスを開いて jpgファイルを指定するとピクチャーボックスにその 画像が表示されるようなものをつくっているのですが、 ピクチャーボックスの上に出るファイルダイアログボックスが重なっていた部分だけ画像が欠けてしまいます。 Picturebox1.Refresh()かなと思って試してみたのですが、今度は全部消えてしまいました。 良い方法があったら教えて頂きたいです。 よろしくお願いします。