JPanel
にGridLayout(2,2)
を使用して4つの画像を表示する最も適切な方法は何ですか?JPanelでGridLayoutを使用して画像を表示する方法は?
問題が解決しました。これが私のやり方です。それは効率的ではないかもしれませんが、読むのは簡単ですし、それは動作します:) これはどのように改善できるか教えてください!私はいつもどのようにコードを改善する方法を探しています!
// Create panel and set layout
pFlag= new JPanel();
pFlag.setLayout(new GridLayout(2,2,10,10));
// Get image
flag1Img = getImage(getCodeBase(), "croatia.png");
flag2Img = getImage(getCodeBase(), "eng.png");
flag3Img = getImage(getCodeBase(), "romania.png");
flag4Img = getImage(getCodeBase(), "spain.png");
// Set as icon
flag1Icon = new ImageIcon(flag1Img);
flag2Icon = new ImageIcon(flag2Img);
flag3Icon = new ImageIcon(flag3Img);
flag4Icon = new ImageIcon(flag4Img);
// Create JLabel
flag1Label = new JLabel();
flag2Label = new JLabel();
flag3Label = new JLabel();
flag4Label = new JLabel();
// Set JLabel alignment
flag1Label.setHorizontalAlignment(JLabel.CENTER);
flag1Label.setVerticalAlignment(JLabel.CENTER);
flag2Label.setHorizontalAlignment(JLabel.CENTER);
flag2Label.setVerticalAlignment(JLabel.CENTER);
flag3Label.setHorizontalAlignment(JLabel.CENTER);
flag3Label.setVerticalAlignment(JLabel.CENTER);
flag4Label.setHorizontalAlignment(JLabel.CENTER);
flag4Label.setVerticalAlignment(JLabel.CENTER);
// Set JLabels as icons
flag1Label.setIcon(flag1Icon);
flag2Label.setIcon(flag2Icon);
flag3Label.setIcon(flag3Icon);
flag4Label.setIcon(flag4Icon);
// Assign icons to images
pFlag.add(flag1Label);
pFlag.add(flag2Label);
pFlag.add(flag3Label);
pFlag.add(flag4Label);
con.add(pFlag);
*複製*最も適切なを見つけるためにしようと... [Javaのスイング - JPanelの上で動的に複数の画像を表示する]の –
可能な複製(http://stackoverflow.com/questions/8500746/java-swing- jpanelを表示する複数の画像を表示する) –
* "..ローカルフォルダから" *どのようなローカル?サーバー、またはクライアントマシン?いずれの方法でも、ディレクトリであり、「フォルダ」ではないことに注意してください。これはまったくGUIのコンセプトです。どちらの部分に問題がありますか?何を試しましたか? –