2016-08-15 12 views
2

基本的に、問題はJava Scene Builderとのインターフェイスを作成したことです。 FXMLボタンからはクラスを開きたいと思っていました。Myボタンでクラスを開くことができません

@FXML 
    public void pressButton(ActionEvent event) throws Exception { 
    Platform.runLater(() -> { 
     try{ 
      new SerialChart().start(new Stage()); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    }); 

    } 

    @FXML 
    public void pressButton2(ActionEvent event) throws Exception {      
    Platform.runLater(() -> { 
     try { 
      new Main().start(new Stage()); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    }); 
    } 

私のメインは開くことができますが、私のシリアルチャットは開くことができません。それは "コンストラクタSerialChart()は未定義です"と書かれています。だからここに私の考えている問題があります

public SerialChart(String title) { 
    super(title); 

私はこれがなぜ開けないのかという問題です。私を助けてください...必要ならばコード全体を表示することができます。

+0

SO HAPPYを考え出した答えです。 'SerialChart'のコードを表示していないので、誰でもあなたを助けることは不可能です。表示されているコンストラクタだけが定義されている場合は、エラーが説明されています。 –

+0

@ジムガリソン私を助けることができますか?あなたに連絡する方法?私の誠実な –

+0

解決策のどれもあなたには役に立たず、解決に時間がかかる可能性がありますが、それを使ってエラーの簡単な例を作成してみませんか? – Aziuth

答えて

0

Jim Garrisson氏によると、あなたが呼ぶコンストラクタは引数はありませんが、定義したものは(String title)です。これは、Button関数でそれを呼び出すときにString引数( ""のような空白も有効)を渡す必要があることを意味します。

new SerialChart("Some Title").start(new Stage()); //should be your call in the Button function. 
+0

いいえ、それ以降はエラーが発生する –

+0

申し訳ありませんが、何が起こったのですか? – Matt

+0

押しボタンで開くときにエラーが発生する –

0

ので、これは、私は `あなたが引数を取らない定義のコンストラクタを持っている必要があります)(`新しいSerialChartを呼び出すために

public void pressButton(ActionEvent event) throws Exception { 
    Platform.runLater(() -> { 
     try{ 
      SerialChart serialChartDemo = new SerialChart("Clean Energy Data Real time graph"); 
      serialChartDemo.pack(); 
      RefineryUtilities.centerFrameOnScreen(serialChartDemo); 
      serialChartDemo.setVisible(true); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    }); 

} 
関連する問題