質問1
実行した時に内容が表示されたりされなかったりします、どうしてでしょうか?
いろいろ試してみましたが分かりませんでした。
質問2
JPanelではダブルバッファリング機能が備わっているみたいですが、
という事はこのソースでもそれは行なわれているのでしょうか?
以上2点と質問が多いですがよろしくお願いします。
import java.awt.*;
import javax.swing.*;
public class JFrameTest extends JFrame{
JPanelTest panel;
Container ct;
public static void main(String[] args){
new JFrameTest();
}
public JFrameTest(){
super("JFrameTest");
panel = new JPanelTest();
ct = getContentPane();
setSize(480,480);
setResizable(false);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
ct.add(panel);
}
}
class JPanelTest extends JPanel{
public JPanelTest(){
setSize(480,480);
}
public void draw(Graphics g){
g.drawString("Test",240,240);
}
public void paintComponent(Graphics g){
super.paintComponent(g);
draw(g);
}
}
No.1ベストアンサー
- 回答日時:
こんばんは。
実行した際に表示される/されない原因は、フレームをsetVisible(true);した後に、パネルをセットしているからです。
試しにsetVisible(true);とct.add(panel);の間で、
try {
Thread.sleep(100);
}
catch(Exception e) {}
というコードを入れておくと、より高い確率で表示されないようにできると思います。
きちんと表示させたい場合は、フレームを作り終わった後(JFrameTest()コンストラクタの最後で)setVisible(true);を呼んでみてください。
ダブルバッファリングについても、
public void draw(Graphics g){
g.drawString("Test",240,240);
try {
Thread.sleep(2000);
}
catch(Exception e) {}
g.drawString("Test2",240,270);
}
という内容で確認できると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java java final 1 2022/06/10 22:49
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
- Java eclipse実行ができない 2 2022/07/27 04:47
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- Java javaのクラスの分け方について質問です。 APIの内部用と外部用でクラスを分けたいのですがインター 2 2022/04/26 16:06
- Java リレーションエンティティクラスとは何ですか? 2 2023/02/10 00:02
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Processingでマウスクリックで...
-
C#で、あるクラスのメンバーす...
-
java のstruts1.3です。
-
大量のデータを読み込んで表示...
-
C# バイナリダンプを構造体に簡...
-
アプレットを再描画させたい
-
iアプリ 複数パネル切替時の変...
-
Javaでパラパラアニメを作成す...
-
Graphics gra = this.getGraphi...
-
【Java】画像表示が出来ない!
-
【javaアプレット】マウスにリ...
-
StrutsのiterateタグでListに格...
-
Form2のテキストボックスを更新...
-
キーリピート?(Javaプログラミ...
-
パスがとおらない・・・
-
C#でのWNetAddConnection3の使...
-
C#からVC++DLLの呼び出しに失敗...
-
C#でHTTPリクエスト時にフリー...
-
staticな有効範囲の配列の作り...
-
アプレットで再描画をする時ち...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
大量のデータを読み込んで表示...
-
C#で、あるクラスのメンバーす...
-
Junitテストでvoid戻り値メッソ...
-
C#でのWNetAddConnection3の使...
-
Processingでマウスクリックで...
-
ボタンの複数割り当てについて
-
エンターキーを押すとOKボタン...
-
C# 矢印キーの取得
-
C# visibleプロパティをfalseに...
-
Thread.sleepのInterruptedExce...
-
C# DataGridView列カスタマイズ
-
C#でキーイベントが発生しない...
-
LVM_SETITEMSTATEでListViewの...
-
[C#.net]スレッド化された別フ...
-
GetDIBits関数の使い方について
-
C# 半角カナの文字化けについて
-
C# 親フォームで指定した値を...
-
javaアプレット repaintのタイ...
-
デスクトップマスコットのドラ...
-
C#で別のFormへ複数の値を返そ...
おすすめ情報