gpt4 book ai didi

java - 将 JProgressBar 宽度设置为固定大小

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:46:58 25 4
gpt4 key购买 nike

我的 JToolBar 上有一个 JProgressBar。问题是 JProgressBar 占用了 JToolBar 上的所有剩余空间,而不是固定宽度。

我试过使用:

Dimension prefSize = goButton.getPreferredSize();
prefSize.width = 100;//some width
progressBar.setPreferredSize(prefSize);
progressBar.setVisible(true);

没有成功。 JProgressBar 不断占用所有剩余空间。

如何强制 JProgressBar 具有固定宽度?

这是我的问题的一个可运行的小例子:

import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JProgressBar;
import javax.swing.JToolBar;

public class SimpleToolbar extends JFrame {

class ToolBar extends JToolBar {

private final JLabel labelSomething;
private final JLabel labelAnything;
private final JButton goButton;
private final JButton cancelButton;
private final JButton pauseButton;
private final JProgressBar progressBar;

public ToolBar()
{
setBorder(BorderFactory.createEtchedBorder());
setFloatable(false);
goButton = new JButton("Go");
cancelButton = new JButton("Cancel");
pauseButton = new JButton("Pause");
labelAnything = new JLabel("Anything");
labelSomething = new JLabel("Something");

progressBar = new JProgressBar();
progressBar.setIndeterminate(true);

Dimension prefSize = goButton.getPreferredSize();
prefSize.width = 100;//some width
progressBar.setPreferredSize(prefSize);
progressBar.setVisible(true);

add(goButton);
add(cancelButton);
add(pauseButton);
addSeparator();
add(labelAnything);
add(labelSomething);
addSeparator();
add(progressBar);
}
}
protected ToolBar toolBar;

public SimpleToolbar() {
super();
setSize(600, 350);

toolBar = new ToolBar();
getContentPane().add(toolBar, BorderLayout.NORTH);
setVisible(true);
}

public static void main(String[] a) {
new SimpleToolbar();

}
}

最佳答案

JProgressBar 添加到 JPane 并将 JPane 添加到 JToolBar

很高兴它有所帮助:)

关于java - 将 JProgressBar 宽度设置为固定大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25633300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com