我在文本窗格中添加了一个进度条,但是我不能调整所添加的进度条的宽度(可以调整大小高度)。请你帮我解决这个问题,并告诉我如何删除进度栏,一旦我完成了它。
JProgressBar progressBar = new JProgressBar();
progressBar.setStringPainted(true);
progressBar.setPreferredSize(new Dimension(50, 15));
progressBar.setMinimum(0);
progressBar.setMaximum((int) file.length());
textPane.setSelectionStart(textPane.getText().length());
textPane.setSelectionEnd(textPane.getText().length());
textPane.insertComponent(progressBar);发布于 2016-02-21 13:08:40
我认为您在质疑如何为JProgressBar设置首选宽度,对吗?
如果这是您的问题,您应该使用setMaximumSize而不是setPreferredSize
JProgressBar progressBar = new JProgressBar();
progressBar.setStringPainted(true);
//progressBar.setPreferredSize(new Dimension(50, 15));
progressBar.setMaximumSize(new Dimension(50, 15)); // This line instead of above line
progressBar.setMinimum(0);
progressBar.setMaximum((int) file.length());编辑以删除组件--您应该假设JTextPane中的组件是一些字符,然后从JTextPane's Document对象中删除它们。我还假设了一个临时JButton来引发remove事件:
JButton b = new JButton("Remove!");
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
textPane.getDocument().remove(0, 1);
} catch (BadLocationException e1) {
e1.printStackTrace();
}
}
});祝好运。
https://stackoverflow.com/questions/35536231
复制相似问题