5

ProgressIndicator によるファイル ダウンロードの進行状況情報を表示する ListCell があります。

私の問題は、インジケーターの下に表示されるパーセンテージ情報を削除することです。hereで述べたように、次のようにCSSにルールを含めました。

.customProgressIndicator .percentage{
    visibility: hidden;
    -fx-text-background-color: red;
}

部分は、-fx-text-background-color: redcss がノードに適用されていることを確認することです。

問題は、のような呼び出しを行うとindicator.setProgress(progress)、パーセンテージが (赤で) 表示され、カーソルをインジケーターの上に置くと、再び非表示になることです。再び最後に、「完了」テキストが呼び出し時に下部に表示されindicator.setProgress(1.0)、ホバー後に再び非表示になります。

ListViewそれは次の理由に関連している可能性があります。ホバリングして非表示にした後、 からアイテムを削除してonListを発生させると、再び表示されます。updateItemListCell

次のような回避策を試しました。

    Text text = (Text)indicator.lookup(".percentage");
    if ( text != null )
    {
        text.setText("");
    }

ただし、null の場合もあれば、そうでない場合もありtextます

4

1 に答える 1

10

ノート:

1)あなたがリンクした投稿を読みましたが、OPは暗黙のうちに、それvisibility: hidden;が彼/彼女のために働いていることを確認しています. しかし、同じコードをテストしましたが、機能していません。おそらくバージョンの違いによるものでしょう。知らない。

2)-fx-text-background-colorは CSS プロパティではありません。これは、caspian.css で定義済みの色です。したがって、それを変更すると、デフォルトで定義されているパーセンテージラベルの色が暗黙的に変更されます

.progress-indicator .percentage {
    -fx-font-size: 0.916667em; /* 11pt - 1 less than the default font */
    -fx-fill: -fx-text-background-color;
}

caspian.css の (-fx-text-background-color上記に注意)

3) 最後に、必要な効果は次の方法で実行できます

.customProgressIndicator .percentage {
    -fx-fill: null;
}

PSリストビュー内の進行状況インジケーターをテストしていません。

于 2013-02-05T14:53:05.733 に答える