を示すゴーストテキストはので、ここで契約です:Javaのスイング:部分的に透明な背景を持つJTextAreaの上のテキストを更新
私はその1つの内部でのJPanelとJTextAreaのを持っています。 JPanelの背景色はアルファ値が200です。 JPanelを使用して背景画像を表示することができます。それは部分的な透明性と呼ばれていませんか?とにかく、私は完全に1つを通して見ることができるように、私は、JTextAreaの非不透明を設定しました:
JPanel p = new JPanel();
p.setBackground(new Color(237, 234, 215, 200);
JTextArea jta = new JTextArea("Blahblahblahblah");
jta.setOpaque(false);
p.add(jta);
[OK]を、私はボタンを押したときに、テキストは次のように変更されます:
jta.setText("new BlahBlah...");
次に、それは起こります:最初のテキストはそこに新しい部分的に透明なフィルムが残ったままです。そして、私が追加したテキストは当然ですが、すぐ後ろにあるものは前のものを見ることができます。テキストを何倍か変更すると、ゴーストが消えます。
翻訳(スクリーンショットは、行の3つのショットあり):
左1:「質問#8のうち1:?(統治行為論を)(私のコメント:OK "
センター:"質問2:8のうち2つ:(別の質問、心配しないでください)?(私のコメント:幽霊はそこにあります[と矢印を指し示す]) "
右手側: "8番のうち8番:(別の質問)?(私のコメント:OK)"
このプログラムが8から3にスワップする質問の量を減らすと、最後の1つは通常よく見えますが、ゴーストは消えてしまいます。しかし、時にはそれは私が何をしても固執します。おそらくメモリが足りない(私はほとんどそれを飲みませんが)とは関係がありますか?
だから、私を助けてください!私は48時間後に締め切りを取っています。
PS。あなたが不思議のような場合、その言語はフィンランド語です。私は学校のプロジェクトに取り組んでいます。それは、さまざまなアプリケーションを持つことができる比較マシンになるでしょう。たとえば、あなたが公選が来たら、プレス/メディアはWeb上でこの種のマシンを使ってどのような問題についても候補者の意見を述べ、投票者も意見を入力することができ、どの候補者が投票者の思考に最も適しているかを計算する。私のホームページを見てください。あなたが興味を持っている場合のためのスクリーンショットのためのプロジェクトブログ(フィンランド語)。
an55i
よかったです。私はそれを試しましたが、すぐには役に立たなかった...コードの使い方がわからないからです...実際には、JPanel pのpaintComponentをオーバーライドするかどうかはわかりません()メソッドまたは背景JPanelのメソッド? – an55i
"解決策は、コンポーネントの背景が塗られる前に、コンポーネントの祖先が塗られていることを確認することです。" – an55i
@ an55iでは、AlphaContainerを使用できるので、何も上書きする必要はありません。それはあなたのための背景の絵をします。 – camickr