質問編集履歴
1
質問を限定いたしました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
java swing
|
1
|
+
java swing メインクラスのコンテナに他のクラスのラベルを表示したい。
|
test
CHANGED
@@ -4,17 +4,9 @@
|
|
4
4
|
|
5
5
|
swingで背景画像の上に別の画像を表示させて、その画像をマウスで操作するプログラムを作りたいです。
|
6
6
|
|
7
|
-
|
7
|
+
現在、背景画像の上に別の画像を表示させようとしています。
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
```
|
12
|
-
|
13
|
-
今は、背景画像の上に別の画像を表示させる段階なのですが、表示できません。
|
14
|
-
|
15
|
-
|
9
|
+
1つのクラスにすべて記述すれば、画像が表示されるのですが、下記のようにメインクラスと画像に関する処理を行うクラスに分けると、そもそも背景画像すら表示されません。どこが間違っているか知りたいです。お願いいたします。
|
16
|
-
|
17
|
-
```
|
18
10
|
|
19
11
|
|
20
12
|
|
@@ -80,32 +72,14 @@
|
|
80
72
|
|
81
73
|
JLabel label1 = new JLabel(icon1); //背景のラベル
|
82
74
|
|
83
|
-
ImageIcon icon2= new ImageIcon("キャラクター.jpg");
|
84
|
-
|
85
|
-
JLabel label2 = new JLabel(icon2); //背景の上に重ねたいラベル
|
86
|
-
|
87
75
|
|
88
76
|
|
89
77
|
MyComponent(){
|
90
78
|
|
91
79
|
add(label1); //コンテナに背景を加える
|
92
80
|
|
93
|
-
label1.setLayout(null);//背景上のレイアウトを無効化
|
94
|
-
|
95
|
-
label2.setBounds(0, 0,35,35);//label2の初期位置
|
96
|
-
|
97
|
-
label1.add(label2); //背景上にlabel2を追加
|
98
|
-
|
99
81
|
}
|
100
82
|
|
101
83
|
}
|
102
84
|
|
103
85
|
```
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
### 試したこと
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
調べた結果ラベルを階層構造にするため、JLayeredPaneを利用すればいいとわかり、上記のプログラムを作ったのですが、画像を表示できませんでした。
|