急急急!!!求高手指点!用vb.net做一个图片自动浏览器,实现点一次时暂停播放,点第二次时继续自动播放这样一个功能
求高手指点!我要用vb.net做一个图片自动浏览器,要实现,点一次该图片时,暂停播放,点第二次该图片时,继续自动播放,这样一个功能。
我已经实现了,点一次时暂停这个功能,但我不会,点第二次时继续这个功能啊。
求高手指点!!!拜托啦!急!
下面是我下的代码,请帮我补充一下,点第二次时继续播放,这个功能的代码啊!!
Public Class 图片自动浏览
Private Sub 图片自动浏览_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox1.Hide()
PictureBox2.Hide()
PictureBox3.Hide()
PictureBox4.Hide()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
PictureBox1.Visible = True
Timer1.Start()
Button1.Hide()
End Sub
Public Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick, PictureBox4.Click, PictureBox3.Click, PictureBox2.Click
If PictureBox1.Visible = True And PictureBox2.Visible = False And PictureBox3.Visible = False And PictureBox4.Visible = False Then
PictureBox1.Visible = False
PictureBox2.Visible = True
PictureBox3.Visible = False
PictureBox4.Visible = False
ElseIf PictureBox1.Visible = False And PictureBox2.Visible = True And PictureBox3.Visible = False And PictureBox4.Visible = False Then
PictureBox1.Visible = False
PictureBox3.Visible = True
PictureBox4.Visible = False
PictureBox2.Visible = False
ElseIf PictureBox1.Visible = False And PictureBox2.Visible = False And PictureBox3.Visible = True And PictureBox4.Visible = False Then
PictureBox1.Visible = False
PictureBox3.Visible = False
PictureBox4.Visible = True
PictureBox2.Visible = False
ElseIf PictureBox1.Visible = False And PictureBox2.Visible = False And PictureBox3.Visible = False And PictureBox4.Visible = True Then
PictureBox1.Visible = True
PictureBox2.Visible = False
PictureBox3.Visible = False
PictureBox4.Visible = False
End If
End Sub
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Click, PictureBox1.Click
Timer1.Enabled = False
PictureBox1.Show()
MsgBox("您想想继续浏览吗?", MsgBoxStyle.YesNo, "提醒你!")
If MsgBoxResult.No Then
PictureBox1.Show()
Else
Timer1.Enabled = True
If PictureBox1.Visible = True And PictureBox2.Visible = False And PictureBox3.Visible = False And PictureBox4.Visible = False Then
PictureBox1.Visible = False
PictureBox2.Visible = True
PictureBox3.Visible = False
PictureBox4.Visible = False
ElseIf PictureBox1.Visible = False And PictureBox2.Visible = True And PictureBox3.Visible = False And PictureBox4.Visible = False Then
PictureBox1.Visible = False
PictureBox3.Visible = True
PictureBox4.Visible = False
PictureBox2.Visible = False
ElseIf PictureBox1.Visible = False And PictureBox2.Visible = False And PictureBox3.Visible = True And PictureBox4.Visible = False Then
PictureBox1.Visible = False
PictureBox3.Visible = False
PictureBox4.Visible = True
PictureBox2.Visible = False
ElseIf
PictureBox1.Visible = False And PictureBox2.Visible = False And PictureBox3.Visible = False And PictureBox4.Visible = True Then
PictureBox1.Visible = True
PictureBox2.Visible = False
PictureBox3.Visible = False
PictureBox4.Visible = False
End If
End If
End Sub
End Class
--------------------编程问答-------------------- 图片是否可以用播放器来播放呢?或是类似ppt一样的东西? --------------------编程问答-------------------- 你虽然“实现了”,但是设计上太次了,必须推倒了重新设计。
循环切换图片,应该仅使用一个pixturebox。
重新设计再说吧。 --------------------编程问答-------------------- 把咋黑哎呀呀 --------------------编程问答-------------------- 呵呵,sp1234说话好难听,不过他没恶意,别介意啊。
是应该用一个pic的,用循环来控制。
点一下,循环中断,再点一下,循环继续。 --------------------编程问答-------------------- Public Class Form2
Dim Images() As String
Dim NowShowImage As Integer
Dim boolPause As Boolean = False
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Images = IO.Directory.GetFiles("C:\Users\Administrator\Desktop\20121207\sgyy\structure", "*.png")
NowShowImage = 0
Timer1.Start()
End Sub
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
PictureBox1.Image = Image.FromFile(Images(NowShowImage))
If NowShowImage = Images.Length - 1 Then
NowShowImage = 0
Else
NowShowImage += 1
End If
End Sub
Private Sub PictureBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
boolPause = Not boolPause
If boolPause Then
Timer1.Stop()
Else
Timer1.Start()
End If
End Sub
End Class --------------------编程问答-------------------- 一、在窗体上设置一个PictureBox,2个Button 一个用来控制“暂停和继续”
二、Imports System.Collections.ObjectModel
三、增加延时函数
Public Sub Delay(ByVal mSec As Long)
On Error Resume Next
Dim TStart As Long
TStart = Now.Ticks / 10000
While (Now.Ticks / 10000 - TStart) < mSec
Application.DoEvents()
End While
End Sub
四、增加一个全局暂停变量控制 :Dim pause As Boolean = False
五、在button1 click事件中
Dim files As ReadOnlyCollection(Of String)
files = My.Computer.FileSystem.GetFiles("d:\", FileIO.SearchOption.SearchAllSubDirectories, "*.*")
For i As Integer = 0 To files.Count - 1
Do While pause = True
Delay(1000)
Loop
Try
Me.PictureBox1.Image = System.Drawing.Image.FromFile(files(i))
Delay(1* 1000) '两幅图之间的显示间隔
Catch ex As Exception
End Try
Application.DoEvents()
Next
六、暂停button
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
pause = Not pause
If pause = False Then
Me.Button2.Text = "暂停"
Else
Me.Button2.Text = "继续"
End If
End Sub
补充:.NET技术 , VB.NET