然后把改名后的照片文件放到你的项目名的目录下,比如你的项目名叫"slideshow",你就把照片文件放到slideshow文件夹下.
最后把下面的Java程序拷贝到你的项目中,把有DD类名的地方改成你的类名,就行了.
完整的让一些照片在JFrame窗体里自动随机播放的幻灯片程序如下
(我用的图片文件是photo1.jpg,photo2.jpg,photo3.jpg,注意事项在注释中注明
import java.awt.Graphics
import javax.swing.ImageIcon
import javax.swing.JFrame
public class DD extends JFrame implements Runnable{
ImageIcon ii=new ImageIcon("photo1.jpg")//这里换成你的图片文件名,放在你的项目名的文件夹中
DD(){
super("Slide")
setSize(400, 400)
setLocationRelativeTo(null)
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
setVisible(true)
}
public void paint(Graphics g){
super.paint(g)
g.drawImage(ii.getImage(),0,0,400,400,null)
}
@Override
public void run() {
while(true){
try {
Thread.sleep(500)//这里是幻灯片播放间隔的时间,这里为500毫秒=0.5秒
} catch (InterruptedException e) {
e.printStackTrace()
}
int i=(int)(Math.random()*3)+1//这里是产生从1-3的随机数,如果你有6个图片文件,把3改成6就是从1-6的随机数了.
ii=new ImageIcon("photo"+i+".jpg")//这里调用你的图片文件,如果你有6个图片文件,改成从1-6的文件名方便调用
this.repaint()
}
}
public static void main(String[] args) {
DD d=new DD()
Thread t=new Thread(d)
t.start()
}
}
ppt保存为html文件的方法:用c#可以轻松实现转换:
using System
using System.Collections.Generic
using System.Text
using System.IO
using PPT = Microsoft.Office.Interop.PowerPoint
using System.Reflection
namespace WritePptDemo
{
class Program
{
static void Main(string[] args)
{
string path//文件路径变量
PPT.Application pptApp //Excel应用程序变量
PPT.Presentation pptDoc //Excel文档变量
PPT.Presentation pptDoctmp
path = @"C:\MyPPT.ppt" //路径
pptApp = new PPT.ApplicationClass() //初始化
//如果已存在,则删除
if (File.Exists((string)path))
{
File.Delete((string)path)
}
//由于使用的是COM库,因此有许多变量需要用Nothing代替
Object Nothing = Missing.Value
pptDoc = pptApp.Presentations.Add(Microsoft.Office.Core.MsoTriState.msoFalse)
pptDoc.Slides.Add(1, Microsoft.Office.Interop.PowerPoint.PpSlideLayout.ppLayoutText)
string text = "示例文本"
foreach (PPT.Slide slide in pptDoc.Slides)
{
foreach (PPT.Shape shape in slide.Shapes)
{
shape.TextFrame.TextRange.InsertAfter(text)
}
}
//WdSaveFormat为Excel文档的保存格式
PPT.PpSaveAsFileType format = PPT.PpSaveAsFileType.ppSaveAsDefault
//将excelDoc文档对象的内容保存为XLSX文档
pptDoc.SaveAs(path, format, Microsoft.Office.Core.MsoTriState.msoFalse)
//关闭excelDoc文档对象
pptDoc.Close()
//关闭excelApp组件对象
pptApp.Quit()
Console.WriteLine(path + " 创建完毕!")
Console.ReadLine()
string pathHtml = @"c:\MyPPT"
PPT.Application pa = new PPT.ApplicationClass()
pptDoctmp = pa.Presentations.Open(path, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse)
PPT.PpSaveAsFileType formatTmp = PPT.PpSaveAsFileType.ppSaveAsHTML
pptDoctmp.SaveAs(pathHtml, formatTmp, Microsoft.Office.Core.MsoTriState.msoFalse)
pptDoctmp.Close()
pa.Quit()
Console.WriteLine(pathHtml + " 创建完毕!")
}
}
}
这样在创建完毕后就可以在c盘找到MyPPT了。
知识点:do-while循环,for循环,和控制台的基本输入(Scanner)输出(System.out)、字符串的判断用equal()或者equalsIgnoreCase()(注:此函数忽视大小写区别)来实现,。程序流程:
1、输出提示信息“输入学生姓名:”
2、读取学生姓名,用字符串(String)存储。
3、通过for循环,输出提示信息“请输入5门功课中的第"+i+"门的成绩:”,并读取用户输入的5门课程的成绩。
4、计算学生的平均成绩并输出
5、输出提示信息"继续输入成绩吗?()y/n";
6、若用户输入y或者Y,输出提示消息"成绩输入结束",程序结束;否则,跳转到1程序继续执行。