package play;
/*
* View.java
*
* Created on __DATE__, __TIME__
*/
/**
*
* @author __USER__
*/
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.io.File;
import java.text.DecimalFormat;
import java.util.ArrayList;
import javax.swing.*;
import javax.swing.filechooser.FileFilter;
public class View extends javax.swing.JFrame implements ActionListener,ItemListener,ComObserver,Runnable{
/** Creates new form View */
public View(Control control,Model model) {
this.controller=control;
this.model=model;
this.filepath="";
model.registerObserver((ComObserver)this);
this.thread=null;
initComponents();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
//GEN-BEGIN:initComponents
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
buttonGroup1 = new javax.swing.ButtonGroup();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jButton1 = new javax.swing.JButton();
jButton1.setFocusPainted(true);
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jProgressBar1 = new javax.swing.JProgressBar();
jProgressBar1.setBackground(Color.yellow);//显示节拍的条
this.jProgressBar1.setMaximum(500);
jProgressBar1.setValue(0);
jPanel1 = new JPanel();
jPanel1.setBackground(Color.lightGray);
jRadioButton1 = new javax.swing.JRadioButton();
jRadioButton2 = new javax.swing.JRadioButton();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();
jMenu2 = new javax.swing.JMenu();
jMenuItem2 = new javax.swing.JMenuItem();
jMenuItem3 = new javax.swing.JMenuItem();
jMenuItem4 = new javax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
// setBackground(Color.cyan);
setTitle("mp3播放器~~脉动监测");
jLabel1.setText("节拍/脉动");
jLabel1.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jLabel1.setForeground(Color.blue);
jLabel2.setText("BPM: ");
jLabel2.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jLabel2.setForeground(Color.blue);
jTextField1.setToolTipText("输入一个值, 最大为 "+MP3Model.MAXVALUE);
jButton1.setText("设置");
jButton1.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jButton2.setText("<<");
jButton2.setToolTipText("减 1");
jButton3.setText(">>");
jButton3.setToolTipText("加 1");
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(
jPanel1);
jPanel1.setLayout(jPanel1Layout);
// jPanel1.setBackground(Color.cyan);
jPanel1Layout.setHorizontalGroup(jPanel1Layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 401,
Short.MAX_VALUE));
jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 53,
Short.MAX_VALUE));
buttonGroup1.add(jRadioButton1);
jRadioButton1.setSelected(true);
jRadioButton1.setText("MP3播放器");
jRadioButton1.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
buttonGroup1.add(jRadioButton2);
jRadioButton2.setText("监测脉动");
jRadioButton2.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenu1.setText("文件");
jMenu1.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenu1.setToolTipText("选择要播放的文件");
jMenuItem1.setText("选择");
jMenuItem1.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenu1.add(jMenuItem1);
jMenuBar1.add(jMenu1);
jMenu2.setText("操作选项");
jMenu2.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenuItem2.setText("开始");
jMenuItem2.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenu2.add(jMenuItem2);
jMenuItem3.setText("暂停");
jMenuItem3.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenu2.add(jMenuItem3);
jMenuItem4.setText("退出");
jMenuItem4.setFont(new java.awt.Font("楷体_GB2312", 0, 13));
jMenu2.add(jMenuItem4);
jMenuBar1.add(jMenu2);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
getContentPane());
getContentPane().setLayout(layout);
layout
.setHorizontalGroup(layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addGap(69, 69, 69)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(
jLabel1)
.addGroup(
layout
.createSequentialGroup()
.addComponent(
jLabel2)
.addGap(
13,
13,
13)))
.addComponent(
jRadioButton1))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(
layout
.createSequentialGroup()
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
layout
.createSequentialGroup()
.addComponent(
jButton2,
javax.swing.GroupLayout.PREFERRED_SIZE,
70,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED,
10,
Short.MAX_VALUE)
.addComponent(
jButton3,
javax.swing.GroupLayout.PREFERRED_SIZE,
71,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(
26,
26,
26))
.addGroup(
javax.swing.GroupLayout.Alignment.TRAILING,
layout
.createSequentialGroup()
.addGroup(
layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(
jTextField1,
javax.swing.GroupLayout.DEFAULT_SIZE,
170,
Short.MAX_VALUE)
.addComponent(
jProgressBar1,
javax.swing.GroupLayout.DEFAULT_SIZE,
170,
Short.MAX_VALUE))
.addPreferredGap(
javax.swing.Lay
模拟实现一个多功能电子设备,它既能播放mp3歌曲,同时还能够借助播放器的界面来监测脉动
4星 · 超过85%的资源 需积分: 9 100 浏览量
2011-03-20
19:53:25
上传
评论 3
收藏 38KB RAR 举报
lmxpf
- 粉丝: 8
- 资源: 10
最新资源
- 基于Matlab人脸肤色定理的教师人数统计+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab霍夫曼变换的表盘读数识别+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab火灾烟雾检测源码带GUI界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab的恶劣天气交通标志识别系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的霍夫曼变换的表盘示数识别+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab的车道线识别系统 +源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的教室人数统计系统带Gui界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的教室人数统计系统带Gui界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB 的霍夫曼变换答题卡识别源码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab+bp神经网络的神经网络汉字识别系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
- 3
前往页