誰も助けてくれますか?私は、JScrollBar
を調整し、JLabel
の上から下にビューを変更することができるJFrame
を作成しようとしています。JLabel
のJLabel
にはJFileChooser
が含まれています。JavaでImageIconを使用してJLabelでJScrollBarを修正するにはどうすればよいですか?
残念ながら、私のコードは思った通りに機能しません。なぜそれがそれを行うすべてのアイデア?または私が気づくべきである欠けているコードがありますか?私の唯一の目標は、私がするJScrollPaneを使用している必要があるとき、私はするJScrollBarを使用している両方JLabels
public class DocVieweR extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private JPanel contentPane;
private int yPos = 0;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
DocVieweR frame = new DocVieweR();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public DocVieweR() {
setTitle("DocVieweR");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(816, 705);
setLocationRelativeTo(null);
setResizable(false);
contentPane = new JPanel();
setContentPane(contentPane);
contentPane.setLayout(null);
JScrollBar scrollBar = new JScrollBar();
scrollBar.addAdjustmentListener(new AdjustmentListener() {
@Override
public void adjustmentValueChanged(AdjustmentEvent e) {
yPos =+ e.getValue();
}
});
scrollBar.setBounds(793, 0, 17, 676);
contentPane.add(scrollBar);
JLabel lblPHOTO1x1 = new JLabel("SELECT IMAGE");
lblPHOTO1x1.setFont(new Font("Segoe UI", Font.BOLD, 16));
lblPHOTO1x1.setHorizontalAlignment(SwingConstants.CENTER);
lblPHOTO1x1.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
JFileChooser chosenFILE = new JFileChooser();
chosenFILE.showOpenDialog(null);
File getFILE = chosenFILE.getSelectedFile();
ImageIcon pic = new ImageIcon(getFILE.getAbsolutePath());
lblPHOTO1x1.setIcon(pic);
}
});
lblPHOTO1x1.setBounds(585, 228, 129, 128);
contentPane.add(lblPHOTO1x1);
JLabel lblBIODATA = new JLabel("");
ImageIcon img = new ImageIcon("resources/BIODATA_96dpi.jpg");
lblBIODATA.setIcon(img);
lblBIODATA.setBounds(0, yPos, 793, 1122);
contentPane.add(lblBIODATA);
}
}
1)今、あなたのコードをテストすることはできませんが、それへの最初のビューでは、私はあなたがこのラインを使用している見ることができる拡張しますcontentPane.setLayout(null); 'と' setBounds(...) 'メソッドは、それがあなたに多くの問題を引き起こすでしょう、なぜですか? [Null layout is evil](http://www.fredosaurus.com/notes-java/GUI/layouts/nulllayout.html)と[frowned upon](https://stackoverflow.com/questions/6592468/why- 2)*「それがなぜ起こるのか?」*なぜそれが何をするのですか? – Frakcool
Frakcool氏はとても素早く対応してくれてありがとうございました。あなたのコメントは、問題を解決するために非常に明確にしました。 –
あなたがそれを解決し、答えを投稿してください、私に電話しないでください、私は古くはありません::) – Frakcool