前提・実現したいこと
初めて質問させていただきます。
職業訓練卒業間近で就活しようとポートフォリオを作成中です。訓練で半年学んだ程度の知識なので至らぬ点もございますがどうぞご容赦ください。
用語とかあまりわかっていないので、変な言い方になったら察してください・・・すいません。
javaでデスクトップガジェットのようなものを作ろうと奮闘しております。
マウスカーソルが当たると画像が変わるようなものを作ろうとしています。
まぁまだまだまだわからないことだらけで、画像を設定するのにも苦労している現状です。
発生している問題・エラーメッセージ
フレームを用意し、ラベルに画像を描画するところまでは何とか出来たのですが、プログラムを実行してみたらなんと設定した画像が表示されないではありませんか!? 下のタスクビューにあるアイコンをポチポチと押せば表示されるのですが。。。
該当のソースコード
java
1import javax.swing.JFrame; 2import javax.swing.JLabel; 3import javax.swing.ImageIcon; 4import java.awt.Color; 5 6 7class Sample1 8{ 9 public static void main(String[] args) 10 { 11 Frame f = new Frame(); 12 } 13} 14 15 16class Frame extends JFrame 17{ 18 19 ImageIcon ii = new ImageIcon("xxx"); 20 JLabel jl; 21 22 public Frame() 23 { 24 super("タイトル"); 25 CreateFrame(); 26 jl = new JLabel(ii); 27 add(jl); 28 29 } 30 31 public void CreateFrame() 32 { 33 34 setSize(500, 500); 35 setLocation(0, 0); 36 setUndecorated(true); 37 setBackground(new Color(0, 0, 0, 0)); 38 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 39 setVisible(true); 40 } 41 42} 43 44//class Label extends JLabel 45//{ 46// ImageIcon ii = new ImageIcon("xxx"); 47// JLabel jl; 48// 49// public Label() 50// { 51// jl = new JLabel(ii); 52// } 53// 54//} 55
試したこと
とまぁこのような有様です。いろいろ調べていてすごい難しそうなすごいものを書いてる皆様の前でこのようなものを出すのは少し辟易としますが...
いろいろ試行錯誤した結果、フレームを透過させる際に使ったsetBackgroundを使えるようにするために使ったsetUndecoratedを消したら実行直後から表示されるようになりました、setBackgroundも消すことになりましたが。。。。
補足情報(FW/ツールのバージョンなど)
回答1件
あなたの回答
tips
プレビュー