当前位置: 首页 > news >正文

网站权限设计myeclipse怎样做网站

网站权限设计,myeclipse怎样做网站,官方网站建设银行信用卡,太原互联网推广公司文章目录 一、路径注意事项#xff1a;① 用相对路径的时候别忘了前面的斜杠② uri问题 二、播放不了的问题① 获取的媒体文件路径本身就是不对的② 必须是uri③ 特殊情况 额外收获: 一、路径注意事项#xff1a; 完整代码如下: import javafx.application.Application; im… 文章目录 一、路径注意事项① 用相对路径的时候别忘了前面的斜杠② uri问题 二、播放不了的问题① 获取的媒体文件路径本身就是不对的② 必须是uri③ 特殊情况 额外收获: 一、路径注意事项 完整代码如下: import javafx.application.Application; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.BorderPane; import javafx.scene.layout.GridPane; import javafx.scene.media.Media; import javafx.scene.media.MediaPlayer; import javafx.stage.Stage; import java.io.IOException; import java.net.URI; import java.nio.file.*; import java.util.ArrayList; import java.util.List; import java.util.Random;public class Main extends Application {Overridepublic void start(Stage primaryStage) throws Exception{primaryStage.setTitle(BA怪叫器雏形版);// 创建上下两个部分的布局BorderPane borderPane new BorderPane();// 上部分用于展示图片的ImageView放置在一个StackPane中ImageView imageView new ImageView();imageView.setFitWidth(300); // 宽度占30%imageView.setFitHeight(300); // 高度占80%borderPane.setCenter(imageView);// 下部分用于放置按钮的GridPaneGridPane gridPane new GridPane();gridPane.setAlignment(Pos.CENTER);gridPane.setHgap(15);gridPane.setVgap(20);// 创建9个带图片的按钮并指定不同的图片和音频for (int i 0; i 15; i) {Button button createImageButton(i,imageView);int row i / 5;int col i % 5;gridPane.add(button, col, row);}borderPane.setBottom(gridPane);// 创建场景并显示Scene scene new Scene(borderPane, 600, 700);primaryStage.setScene(scene);primaryStage.getIcons().add(new Image(/img/cover.jpg));primaryStage.show();}// 创建带图片的按钮并添加事件处理程序private Button createImageButton(int index,ImageView mainImage) {String[] imagePaths {/img/fox.jpg, /img/xiaotao1.png, /img/xingye.jpg,/img/fox.jpg,/img/fox.jpg, /img/fox.jpg, /img/fox.jpg,/img/fox.jpg,/img/fox.jpg, /img/fox.jpg, /img/fox.jpg,/img/fox.jpg,/img/fox.jpg, /img/fox.jpg, /img/fox.jpg,/img/fox.jpg};Image image new Image(imagePaths[index]);ImageView imageView new ImageView(image);imageView.setFitWidth(50);imageView.setFitHeight(50);Button button new Button(, imageView);button.setOnAction(event - {String folderPath;if (index0) {folderPath/audio/fox1;}else if (index1){folderPath /audio/xiaotao;}else if (index2){folderPath /audio/xingye;}ListString filePathsnew ArrayList();//这里用于调试String urigetClass().getResource(folderPath).toString();try (DirectoryStreamPath directoryStream Files.newDirectoryStream(Paths.get(getClass().getResource(folderPath).toString().substring(6)))) {for (Path path : directoryStream) {if (Files.isRegularFile(path)) {filePaths.add(path.toString());System.out.println(文件路径: path.toString());}}} catch (NoSuchFileException e) {System.out.println(指定的文件夹不存在 e.getMessage());} catch (IOException e) {System.out.println(无法读取文件夹: e.getMessage());}// 当按钮点击时更新上部ImageView的图片mainImage.setImage(image);Random randomnew Random();int audioIndexrandom.nextInt(filePaths.size());// 播放MP3音频String audioFilePath filePaths.get(audioIndex);audioFilePath audioFilePath.replace(\\, /);try {URI audioUri Paths.get(audioFilePath).toUri();Media media new Media(audioUri.toString());MediaPlayer mediaPlayer new MediaPlayer(media);//添加一个setOnReady()事件监听器来确保音频文件在准备好之后再进行播放mediaPlayer.setOnReady(() - {mediaPlayer.play();});} catch (Exception e) {e.printStackTrace();}});return button;}public static void main(String[] args) {launch(args);} }① 用相对路径的时候别忘了前面的斜杠 并不是什么大问题只是说这个细节可能会被遗漏 ② uri问题 当时搞这个费了老劲了搞不懂为啥是非法路径使用getResource获取编译出来的文件夹路径会前面会出现file:/必须把这个file:/去掉才能进行下一步文件夹下的文件读取 二、播放不了的问题 ① 获取的媒体文件路径本身就是不对的 D:\javaFX1\out\production\java\audio\fox1\audio0.wav从directoryStream忽略这个只是一个特殊指代词得到的文件路径要注意路径里面的是斜杠还是反斜杠合法的路径应该是/才对要把“\”(反斜杠)换成“/”(斜杠)  加以下这行代码就可以了audioFilePath audioFilePath.replace(\\, /);这里源的位置两个斜杠分别代表斜杠和转义符 ② 必须是uri 转换完反斜杠播放媒体那你大概率会遇到下面这个错误 java.lang.UnsupportedOperationException: Unsupported protocol xxx这个错误是由于尝试使用不支持的协议导致的。在JavaFX的Media类中它接受的是一个合法的URIUniform Resource Identifier而不是简单的文件路径。需要将文件路径转换为正确的URI格式然后再传递给Media类 ③ 特殊情况 我遇到一种奇怪的现象打断点看路径没有问题文件在项目里也有但老是报not found的情况最后发现是编译结果那里没把我项目里的文件编译出来重新编译也没用。  碰到这种情况直接把整个out删掉然后再给它一锤子(编译)看它还发不发癫 额外收获: URI和URL区别的通俗理解 借用一句话就是: 去村子找个具体的人就是URI(这个人)如果用地址某村多少号房子第几间房的主人 就是URL如果用身份证号名字 去找就是URN了
http://www.dnsts.com.cn/news/245348.html

相关文章:

  • dedecms 网站安装网站开发最好的语言
  • 苏州网站建设熊掌号wordpress网址转跳页面插件
  • 网站网页制作机构跨境电商怎么样
  • preec网站广告设计公司策划书
  • 淘宝客网站女装模板下载做产品网站建设
  • 商城网站 价格公众号注册流程
  • 网站 备案 注销 影响有哪些图片设计网站有哪些问题
  • 专门做电商的招聘网站h5建设网站教程
  • 网站免费建站owordpress代码高亮主题
  • asp医院网站源码ai网站设计
  • 中国seo第一人seo人才
  • 山东住房和城乡建设部网站wordpress带会员vip主题
  • 中国建设教育协会是个什么网站北京快三
  • 电影网站怎么做流量北京seo排名技术
  • 找百度公司做网站怎么样外贸汽车网站制作
  • 衡阳网站网站建设小程序推广渠道
  • 网站开发可行性分析网站分销系统
  • 数据网站怎么做免费的产品图片网站
  • 成都网站推广外包墨刀可以做网站原型图吗
  • 网站链接提交dedecms 网站地图生成
  • 仪征做网站公司哪家好安徽建设网站公司
  • 河北建设银行招聘网站网站开发价位评估
  • 网站开发过程记录册牡丹江百姓信息网
  • 广州机械网站建设外包内丘网站建设
  • 博客网站做外贸可以吗怎么用ip做网站
  • 深圳市龙岗区住房和建设局网站ps图做ppt模板下载网站
  • 门户网站设计特点杭州富阳区网站建设公司
  • 网站做推广需要什么抚州企业网站做优化
  • 揭阳智能模板建站电子商务师证官网
  • 阿坝州建设局网站刘志彬wordpress 修改目录权限设置