一、原问:c#中怎么在picturebox控件中让几张图片像幻灯片一样自动播放?
1 . 借助timer控件,当点击按钮的时候激活timer事件,然后在timer事件里面组织显示图片就可以了。图片呢,可以把名字存入一个数组,在timer的滴答事件中循环调用,每触发一次数组就移动一个索引,直到最后一个为止。
2 . 对于多线程的话,实现这种功能用多线程就是大材小用。不过也可以,你可以把显示图片的方法用线程去调用显示图片,调用完毕之后线程会自动停止,然后你根据时间估算下,在重新调用线程即可,然后根据调用的次数来控制应该显示的图片就可以了。
using System.IO;
public partial class Form1 : Form
{
int index=0;
string[] pathlist ={
@"D:\1.jpg",
@"D:\2.jpg",
@"D:\3.jpg"
};//图片路径列表
public Form1()
{
InitializeComponent();
}
private void timer1_Tick(object sender, EventArgs e)
{
pictureBox1.ImageLocation = pathlist[(index++) % pathlist.Length];
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Interval = 1000;//设置timer1控件时间间隔为1000ms即1秒
pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;//设置图片自动缩放以适应图片框大小
timer1.Start();//开始
}
private void button2_Click(object sender, EventArgs e)
{
timer1.Stop();//停止
}
}
----------------------------------------------------------------------------------------------------
二、想打开之前隐藏的界面:
在Photo界面中点击一个按钮隐藏本界面(本例为Photo)打开已隐藏的界面←即返回上一级界面(本例为LabMain)
1.可以在想打开(被隐藏了)的界面的函数中定义一个公有的Form类型的变量f:
namespace login//项目名称为login
{
public partial class LabMain : Form//想打开的界面名称为LabMain
{
public static Form f;//定义一个公有的Form类型的变量f
public LabMain()
{
InitializeComponent();
f = this;//使f等于当前窗体LabMain,用于后期显示此隐藏窗口
}
2.然后在Photo界面中添加代码:
private void botton3_Click(object sender, EventArgs e)//返回上一级界面
{
this.Hide();//隐藏本窗口Photo
LabMain.f.Show();//显示之前(以被隐藏)的窗体Labmain
}
--------------------------------------------------------------------------------
三、图片查看器的实现
这个目前还没有时间尝试,先存着百度经验的链接:
https://jingyan.baidu.com/article/6181c3e0bb2f7e152ef153d1.html
---------------------------------------------------------------------------------
四、查看项目文件的绝对路径
https://zhidao.baidu.com/question/572125919.html