我写了一个小程序,在读一本关于swing的书时,在两个标签之间创建了一个JSplitPane.问题是JSplitPane几乎看不到(至少在我的操作系统中 - MAC OS Lion)并且在它上面设置一些属性(如前景色)似乎不起作用.
这是代码:
//Demonstrate a simple JSplitPane
package swingexample4_6;
import javax.swing.*;
import java.awt.*;
public class SplitPaneDemo {
//constructor
public SplitPaneDemo()
{
//Create a new JFrame container.
//Use the default border layout
JFrame jfrm = new JFrame("Split Pane Demo");
//Give the frame an initial size
jfrm.setSize(380, 150);
//Terminate the program when the user closes the application
jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//--Make two labels to show the split pane
JLabel jlab = new JLabel(" Left side: ABCDEFGHIJKLMNOPQRSTUVWXYZ");
JLabel jlab2 = new JLabel(" …
Run Code Online (Sandbox Code Playgroud) 我是Swing和AWT的初学者,我正在寻找使用Netbeans构建GUI.我的GUI需要三个区域,我目前正在考虑将其作为JFrame上的JPanels.我需要一个"绘图"面板,它将监听鼠标输入并绘制Java2D形状.绘图面板将固定在左上角.另外两个区域是"属性"滚动窗格和"控制器"滚动窗格.控制器窗格将确定将通过按钮显示哪些绘制元素,属性滚动窗格将显示有关在绘图窗格中单击的任何形状对象的详细信息(端点,颜色等).
绘图区域的典型用例是绘图区域中的第一次点击将是形状的第一组坐标,IE:一条线.该点击将被捕获为point2d对象.第二次单击将是第二个point2D对象,并且将在两者之间构建一条线.控制器区域将具有"圆形","线","椭圆"等按钮.根据单击的控制器按钮,将仅在绘图区域中绘制该类型的形状.控制器和属性滚动窗格将不可移动,它们将分别锁定并可调整到GUI的底部和右侧.
作为初学者,我正在努力使用最好的组件.我一直在阅读JDesktop和JInternalFrame,但似乎我并不真的需要这一切.一个简单的JFrame有三个JPanel就足够了吧?更具体地说,我认为我需要一个顶级JFrame,一个JPanel用于绘图框架和两个JScrollPanels.我需要在绘图窗格上使用鼠标监听器来捕获每次单击的坐标,以及控制窗格中每个按钮的监听器.我可以在JPanel上放置一个鼠标监听器,并为其绘制Java2D形状,还是需要在JPanel内部使用不同的(更好的?)容器来进行绘图?