2012-03-20 15 views
-2

PictureBoxに1枚以上の写真を置く方法を教えてもらえますか?小さなスライドショーのように、すべての写真を1枚ずつ表示しますか?PictureBoxでフォトスライドショーを作成するには?

私は自分のすべての製品をフォームに表示する必要があるプロジェクトに取り組んでいます。

+0

投稿する前によくお読みください。 –

答えて

1

PictureBoxを使用したいので、WinFormsを想定します。

最も簡単な方法は、ただのPictureBoxを更新するために、リスト内の画像を保持し、タイマーを使用することです:

Public Class Form1 
    Private images As New List(Of Image) 
    Private index As Integer 

    Public Sub New() 
    InitializeComponent() 

    images.Add(CreateImage(Color.Blue)) 
    images.Add(CreateImage(Color.Red)) 
    '// images.Add(Image.FromFile("c:\myimage.png") 

    Timer1.Interval = 1000 
    Timer1.Start() 
    End Sub 

    Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick 
    If images.Count > 0 Then 
     If index >= images.Count Then 
     index = 0 
     End If 
     PictureBox1.Image = images(index) 
     index += 1 
    End If 
    End Sub 

    Private Function CreateImage(ByVal whichColor As Color) As Image 
    Dim bmp As New Bitmap(64, 64) 
    Using g As Graphics = Graphics.FromImage(bmp), _ 
      br As New SolidBrush(whichColor) 
     g.Clear(Color.White) 
     g.FillEllipse(br, New Rectangle(1, 1, 61, 61)) 
    End Using 
    Return bmp 
    End Function 

End Class 

CreateImage機能は単なるデモンストレーション用です。それをImages.FromFile(...)関数呼び出しで置き換えて、独自のイメージをロードします。それに応じてタイマーを調整します。

関連する問題