【发布时间】:2013-11-19 11:11:57
【问题描述】:
我有一个带有 BorderLayout() 的 JFrame。在 SOUTH Layout Constraint 中,我想放置一个进度条。不是动态的,而是不时设置值(0-100)的值。 我想到了一个 JPanel,我在其中绘制了一个具有适当宽度的矩形。 如何在 JPanel 中绘制矩形?
JFrame frame = new JFrame();
frame.setBounds(100, 100, 790, 539);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(new BorderLayout(0,0));
frame.setResizable(false);
JPanel panelSouth = new JPanel();
frame.getContentPane().add(panelSouth, BorderLayout.WEST);
我在想什么,也许我可以调整 JPanel panelSouth 的大小。但在 Borderlayout 中,它总是延伸到整个 SOUTH。
【问题讨论】:
-
How can I draw a rectangle inside a JPanel?例如按照官方 Oracle 教程2D Graphics或Performing Custom Painting或How to Decorate Components with the JLayer Classfor Java7 -
In the SOUTH Layout Constraint I want to put a progressbar. Not a dynamic one but one that gets set with a value (0-100) from time to time.hmmm 默认情况下自定义绘画永远不会返回任何大小,您必须以编程方式设置此首选大小,确保没有您的SSCCE没有任何切肉刀只会使短裤变暗 -
“不是动态的,而是不时设置值 (0-100) 的。”我不明白这句话的意思。
JProgressBar有一个setValue方法,您可以不时调用它。那你为什么不使用它呢?什么是“动态的”?
标签: java swing jframe jpanel progress-bar