私のJPanelに画像やラベルを表示しようとしています。つまり、カスタムの場所に多くのJLabelを表示したいのですが、現在は4つのラベルしか表示できません。私はScrollPaneを使用する必要があることを理解しています。私はそれを使用しようとしましたが、私はそれらを税関の場所に配置できません。 (カスタムの場所では、私は私のラベルを配置するCOORDSを使用することを意味。)ここで JLabelをScrollPaneの特定の場所に追加するにはどうすればよいですか?
を使用せずにコードでのScrollPane:import java.awt.Dimension;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.border.EmptyBorder;
public class Images extends JFrame{
private JPanel contentPane;
public static void main(String[] args) {
Images image=new Images();
}
public Images(){
setVisible(true);
setTitle("myTitle");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 800, 800);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblNombreequipo = new JLabel("trying: ");
lblNombreequipo.setBounds(147, 110, 145, 14);
contentPane.add(lblNombreequipo);
int coordY=150;
for(int i=0;i<10;i++){
JLabel myLabel = new JLabel("attempt: "+i);
myLabel.setBounds(147,coordY, 145, 14);
contentPane.add(myLabel);
coordY=coordY+150;
}
}
}
'JScrollPanel'を使用しようとしたあなたのコードを投稿するべきです。あなたが投稿したものは、「私が試したコード」の代わりに「私のコードを書いてください」のように見えますが、どこが間違っていましたか?しかし、上記のコードのいくつかの問題に答えるには、デフォルトの 'FlowLayout'を使って' JPanel'を作成しています。これは、 'JPanel'に追加された子に与えられた任意の位置情報をオーバーライドします。 – AJNeufeld
ヌルレイアウトを使用することをお勧めします - むしろ、適切な 'LayoutManager'を使用してください。 https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html – copeg