package com.meyacom.javafx;
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;
/**
*
* 类名:LayoutDemo
*
* @author 朱湘鄂
* @Created Date:2011-7-14 @Created Time:下午04:12:52
* @Copyright 2011-2023 MYC Corporation, All Rights Reserved.
* 边框布局分为五块:上下左右中
* 下面创建一个边框布局
*/
public class LayoutDemo extends Application{
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage stage) throws Exception {
Group root = new Group();//创建一个根节点
Scene scene = new Scene(root,800,600,Color.WHITE);
stage.setScene(scene);
stage.setTitle("播放器");
BorderPane border = new BorderPane();
border.setTop(new Rectangle(800,50,Color.RED));//早头部创建了一个矩形
border.setBottom(new Rectangle(800,50,Color.WHITE));
border.setCenter(new Rectangle(500,500,Color.BLUE));
border.setLeft(new Rectangle(150,500,Color.GREEN));
border.setRight(new Rectangle(150,500,Color.YELLOW));
String source = "http://image.tiancity.com/mh/video/11/HeroesCG.flv";//播放的文件
Media media = new Media(source);//创建一个播放的对象
final MediaPlayer mp = new MediaPlayer(media);//播放器
mp.setAutoPlay(false);
MediaView mv = new MediaView();
mv.setMediaPlayer(mp);
//创建Hbox的面板
HBox hbox = new HBox();
hbox.setPadding(new Insets(15,12,15,12));
hbox.setSpacing(10);//创建空隙
hbox.setStyle("-fx-background-color:#336699");
//创建按钮
Button buttonCurrent = new Button("播放");
buttonCurrent.setMaxSize(100, 10);
buttonCurrent.setPrefWidth(100);
buttonCurrent.setOnAction(new EventHandler<ActionEvent>(){
@Override
public void handle(ActionEvent arg0) {
mp.play();
}
});
System.out.println(mp.getTotalDuration());
//创建按钮
Button buttonCurrent1 = new Button("暂停");
buttonCurrent1.setMaxSize(100, 10);
buttonCurrent1.setPrefWidth(100);
buttonCurrent1.setOnAction(new EventHandler<ActionEvent>(){
@Override
public void handle(ActionEvent arg0) {
mp.stop();
}
});
//添加到hbox中
hbox.getChildren().addAll(buttonCurrent,buttonCurrent1);
//创建vbox
VBox vbox = new VBox();
vbox.setPadding(new Insets(10,10,10,10));
vbox.setSpacing(10);
//创建text
Text title = new Text("Data");
title.setFont(Font.font("Amble CN",FontWeight.BOLD,14));//设置字体
vbox.getChildren().add(title);
Text options[] = new Text[]{
new Text("CHINA"),
new Text("CHINA1"),
new Text("CHINA2"),
new Text("CHINA3"),
new Text("CHINA4")
};
//将text添加到vbox中
for(int i=0;i<4;i++){
vbox.getChildren().add(options[i]);
}
//root.getChildren().add(mv);
border.setLeft(vbox);
border.setTop(hbox);
border.setCenter(mv);
root.getChildren().add(border);//将圆添加到背景中
stage.setVisible(true);
}
}
分享到:
相关推荐
基于安卓的音频播放器基于安卓的音频播放器javafx2.0,java,javafx,例子,代码 Sun公司(已于20092008年12月05日发布了JavaFX技术的正式版,它使您能利用 JavaFX 编程语 言开发富互联网应用程序(RIA)。...
根据所提供的信息,本书名为《Pro JavaFX 2》,是一本详细介绍 JavaFX 2.0 的专业书籍。该书旨在帮助读者深入了解 JavaFX 2.0 的功能,并提供实际应用中的示例。此外,还建议读者可以与另一本书《JavaFX 2.0:...
1. 媒体播放器:JavaFX内置了MediaPlayer类,支持音频和视频的播放,包括本地文件和网络流媒体。 2. 媒体视图:MediaView组件用于在应用程序中显示媒体内容。 六、JavaFX图表 JavaFX的Charts模块提供了多种图表...
这个类位于`javafx.media`包下,是JavaFX 2.0引入的一个新特性,使得开发者能够轻松地在Java应用程序中集成多媒体功能。MediaPlayer支持多种常见的媒体格式,如MP4、WMV、WAV等,且能够通过URL加载网络资源。 1. **...
对于新的多媒体项目,开发者可能考虑使用其他更现代的框架,如JavaFX或者开源的GStreamer Java绑定。 总结,JMF 2.0 API文档提供了全面的指南,涵盖了JMF的核心服务、插件机制、应用程序接口以及使用示例,为开发者...
5. **MusicClient2.0.rar**:这是一个可能包含音乐播放器客户端源代码的RAR压缩文件。RAR是一种流行的压缩格式,可以解压出包含.java源代码文件,这些代码可能包含了播放器的逻辑、UI设计和与服务器交互的部分。 6....
5. `jlGui2.0.jar`: 这是Java GUI(图形用户界面)的主程序包,包含了播放器的界面和逻辑。用户可以通过这个界面选择和控制播放MP3文件。 6. `mp3sp.jar`: 可能是MP3流处理的库,使得播放器能够处理网络流媒体中的...
除了 JMF,还有一些第三方库可以替代或增强 Java 播放器的功能,如 Xuggler(用于处理音视频文件的 I/O 和编码解码)和 JavaFX(提供更现代、功能丰富的多媒体支持,适合 Java 8 及以上版本)。 需要注意的是,JMF ...
- **音乐应用**:在音乐播放器中展示当前播放的歌曲的频谱,提升用户体验。 - **音频编辑**:在音频编辑软件中,可视化可以帮助用户更直观地调整音频的各个部分。 - **教学工具**:在音乐教育领域,音频可视...
JavaPlayer_107.zip 文件看起来是一个与Java相关的播放器软件的版本更新,可能是用于播放多媒体内容,如视频或音频。然而,由于信息有限,我们只能根据提供的标签“图像识别”来推测它可能包含了图像处理或识别的...
在Java世界里,开发一个"专辑"可能意味着它是一个集合了多个功能或者模块的软件产品,比如一个音乐播放器、一个数字专辑管理系统,或者是用于处理音乐数据的库。"2.0"的版本号表示这是一个重要的更新,通常伴随着新...
WavePlayer是一款基于Java开发的简单波形文件播放器。它专为播放波形音频文件(如.wav格式)设计,提供了一个基本的用户界面来控制音频的播放、暂停、停止和音量调整。作为一款轻量级的应用,WavePlayer在理解和学习...
Java的Swing或JavaFX库可能被用于构建播放器的用户界面。 2. **在线播放**: 在线播放是指不需预先下载整个媒体文件,而是通过网络流式传输数据,边接收边播放。这通常涉及到HTTP或RTSP协议,以及流媒体格式如HLS ...
3. **音频处理库**:为了播放音乐,项目可能使用了如FFmpeg、GStreamer或JavaFX的Media API等音频处理库,用于解码、播放和控制音量。 4. **文件系统操作**:播放器需要能够读取和管理本地音乐文件,这涉及到文件I/...
它可能采用了Java Media Framework (JMF) 或JavaFX等库来实现多媒体文件的解码和播放。 在1.09版本中,我们关注的焦点是"解码器"这一标签。解码器是播放器的核心组件,负责将数字编码的媒体数据转换成原始的音频或...
现代的Java开发者可能会选择使用更加先进和全面的库,如JavaFX或JMF的替代品如VLCJ,这些库提供了更广泛的格式支持和更好的性能。 总结来说,JMF是一个用于开发多媒体应用的Java框架,它的API提供了一套接口和类来...
4. **音频处理库**:项目可能依赖于各种音频处理库,如JavaFX或Android的MediaPlayer/ExoPlayer,用于播放、控制和处理音频文件。 5. **框架和库**:为了提高开发效率,开发者可能会选择使用MVC(模型-视图-控制器...
Java Media Framework (JMF) 是一个开源的...然而,由于其对硬件和操作系统的依赖,以及后来JavaFX等现代多媒体库的出现,JMF的使用已逐渐减少。但对于理解早期Java多媒体编程和研究历史,JMF的API文档仍然非常有价值。
1. **OAuth 2.0授权**:为了访问Spotify API,开发者需要使用OAuth 2.0进行身份验证。SpotifyStreamer项目会教你如何设置客户端ID和秘密,获取访问令牌,并处理刷新令牌以保持会话持久。 2. **HTTP请求库**:Java中...
5. **授权与身份验证**:Spotify API要求用户授权,所以SpotifyStreamer可能实现了OAuth 2.0协议来安全地获取和管理用户的访问令牌。用户可能需要通过浏览器进行登录,然后应用获取授权码,最后换取访问令牌。 6. *...