0

Java は初めてですが、戻り値はどのように機能しますか? GLabel別のメソッドで使用するには、の幅を返す必要があります

private double createLabel(String text, int locX, int locY){
    double widthOfLabel = labelText.getWidth();
    return widthOfLabel;
}

(私は un=important 部分を切り取りました) しかし、これはラベルの幅を返すはずです。

別のメソッド内で使用するにはどうすればよいですか?

private void  getWidthofLabel(){
    double name = ?????????
}

私はいくつかの異なるものを試しましたが、それらはすべてnull. メソッドの戻り値を取得するときにもう 1 つ、createLabelパラメーターを設定する必要があります(string,int,int)か? 私はそれを望んでいませんが、デバッガーは私にそれらを設定するように強制しているようです。

4

4 に答える 4

1

The return call will be done like:

double name =  createLabel(text, locX, locY);

and if you define method like following:

private double createLabel(String text, int locX, int locY){
}

You would need to pass a String and two int. In case you want a variant where you need not to pass parameters; overload the method like:

private double createLabel(){
}

which you can call like:

double name =  createLabel();
于 2012-09-02T10:21:02.430 に答える
1

結果を取得したい場合は、次のcreateLabelようなものが必要になります。

double name = createLabel(text, locX, locY);

パラメータを指定する必要があります。そうしないと、コードをコンパイルできません。それらが必要ない場合は、パラメーターなしでオーバーロードを作成できます。

private double createLabel(){
      double widthOfLabel = labelText.getWidth();
      return widthOfLabel;
}

しかし、この時点では、コードで何が起こっているのかわかりません。:D

于 2012-09-02T10:19:49.427 に答える
0

You need to call the function:

double name = createLabel(text,locX,lockY);

where text is a string, locX and lockY is ints.
it is impossible to call a function without its parameters, unless there is another function with the same name (that's called overload method).

于 2012-09-02T10:22:21.310 に答える
0

あなたはこのように呼び出すことができます

private void  getWidthofLabel(){
   double name = createLabel("label", 3, 5);
}
于 2012-09-02T11:59:06.903 に答える