用JAVA在界面中实现幻灯片播放,求代码

Python016

用JAVA在界面中实现幻灯片播放,求代码,第1张

要让照片随机播放,需要把照片名改成比如photo1.jpg,photo2.jpg,photo3.jpg...的有序号顺序排列的文件名,

然后把改名后的照片文件放到你的项目名的目录下,比如你的项目名叫"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程序继续执行。