Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 让绝地武士开始工作_Java_Swing_Jeditorpane - Fatal编程技术网

Java 让绝地武士开始工作

Java 让绝地武士开始工作,java,swing,jeditorpane,Java,Swing,Jeditorpane,好吧,这是我的问题。我有以下代码: import java.awt.*; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.regex.Pattern; i

好吧,这是我的问题。我有以下代码:

import java.awt.*;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.regex.Pattern;

import javax.swing.*;

public class SongTapper extends JFrame {

    Date d;
    boolean isFirstTap = true;
    static JTapper tap;
    URL url;

    JLabel label = new JLabel();
    JEditorPane pane = new JEditorPane();
    JScrollPane scroll;
    JFrame frame;

    public void show() {
//      d = new Date();
//      Date d2 = new Date();
//      
//      double seconds = ((d.getTime() - d2.getTime()) /1000);
//      
//      System.out.println(seconds);

        frame = new JFrame();
        tap = new JTapper();
        tap.setEditable(false);
        tap.setText("Tap out a song using the Space bar");

        tap.addTapListener(new TapListener() {

            String count = "";

            @Override
            public void tapPerformed() {

                if(isFirstTap){
                    d = new Date();
                    isFirstTap = false;
                }else{
                    Date tapping = new Date();

                    double seconds = (((double)tapping.getTime() - (double)d.getTime()) / 1000.0);

                    String total = Double.toString(seconds) + "-0-1/";

                    System.out.println(count += total);


                }

            }

            @Override
            public void tappingCompleted() {
                tap.setText("Tapping completed");
                String fullUrl = "http://www.musipedia.org/result.html?sourceid=melody-url&tx_mpsearch_pi1%5bsubmit_button%5d=Search&tx_mpsearch_pi1%5bpc%5d=hum%20" + 
                        count +"&filtertext=&coll=r&onlymatchfrom=0 ";
                try {
                    url = new URL(fullUrl);
                    pane.setPage(url);
                } catch (MalformedURLException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }

                frame = new JFrame();
                 scroll = new JScrollPane(pane);
                frame.getContentPane().add(scroll);
                frame.pack();

            }

        });

        frame.setTitle("Song Tapper");

        //frame.getContentPane().add(scroll);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(new Dimension(250, 100));
        frame.getContentPane().add(tap);

        frame.pack();
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
    }

}

导入java.awt.Component;
导入java.awt.event.KeyEvent;
导入java.awt.event.KeyListener;
导入java.util.ArrayList;
导入java.util.List;
导入java.util.Observable;
导入javax.swing.JLabel;
导入javax.swing.JPanel;
导入javax.swing.JTextField;
公共类JTapper扩展了JTextField,实现了KeyListener{
JLabel label=新的JLabel(“使用空格键轻敲歌曲”);
整数计数;
列表点击=新建ArrayList();
公共JTapper(){
this.addKeyListener(this);
}
公共无效addTapListener(TapListener TapListener){
添加(tapListener);
}
@凌驾
public void keyTyped(KeyEvent e){
//TODO自动生成的方法存根
}
@凌驾
按下公共无效键(按键事件e){
}
@凌驾
公共无效密钥已释放(密钥事件e){
如果(例如getKeyCode()==32){
用于(轻触侦听器轻触:轻触){
tap.tapPerformed();
}
}
否则如果(例如getKeyCode()==10){
用于(轻触侦听器轻触:轻触){
点击。点击完成();
}
}
}
}
我正试图用空格键点击的时间来替换url的中间部分,但是我很难让它打开包含所需网站的JEditorPane

有人知道如何修复它以显示我请求的网页吗


如果您需要更多信息,请告诉我。

Url部分将非常简单:

String part = JTapper.getTapNumber()+"";//if it exists
//if it doesn't exist just make it
${name_of_JEditorPane}.setPage(new URL("http://www.example.com/"+part+"ending"));

要拉起绝地武士窗格,你可以制作一个包含窗格的JFrame,但我必须警告你!您不应该使用JEditorPAnes显示网页,因为它们只能使用基本html,不能运行javascript KiistListor <代码>,请考虑使用<代码> DoCTeNistListAu/COD>
String part = JTapper.getTapNumber()+"";//if it exists
//if it doesn't exist just make it
${name_of_JEditorPane}.setPage(new URL("http://www.example.com/"+part+"ending"));