标签: springlayout

SpringUtilities无法解决

我正在尝试使用Oracle的一个GUI示例SpringUtilities.但Eclipse给了我错误Cannot resolve to type,当我尝试编译时,我得到了SpringUtilities cannot be resolved.我正在使用1.7 JDK,我猜我必须在某个地方添加一些内容,但我无法在互联网上找到有关此问题的更多信息.

java api springlayout

9
推荐指数
1
解决办法
1万
查看次数

标签和按钮的编程方式

我正在尝试用Java创建一个SpringLayout,这是我的代码(从Oracle Java文档中获取)

import javax.swing.*;
import java.awt.*;

public class SpringForm {

    private static void createAndShowGUI() {
        String[] labels = {"Side1: ", "Side2: ", "Side3: "};
        int numPairs = labels.length;
        //Create and populate the panel.
        JPanel p = new JPanel(new SpringLayout());
        javax.swing.JButton calculate_btn;
        calculate_btn = new javax.swing.JButton();             

        for (int i = 0; i < numPairs; i++) {
            JLabel l = new JLabel(labels[i], JLabel.TRAILING);
            p.add(l);
            JTextField textField = new JTextField(10);
            l.setLabelFor(textField);
            p.add(textField);
        }
        calculate_btn.setText("Calculate");
        p.add(calculate_btn);
        //Lay out the panel.
        SpringUtilities.makeCompactGrid(p,
            numPairs, 2, //rows, …
Run Code Online (Sandbox Code Playgroud)

java layout user-interface swing springlayout

7
推荐指数
1
解决办法
4579
查看次数

为什么SpringUtilities不是核心Java库的一部分?

我知道它SpringLayout是由GUI构建器使用的,但是当开发人员想要创建类似于表单的布局时,这种布局很有用.而SpringUtilities公用事业类使得与布局管理器手动编码容易.

那么,为什么不是核心Java库的这一部分呢?只是好奇...

java swing springlayout

6
推荐指数
0
解决办法
2980
查看次数

如何在 networkx 中绘制不重叠的边缘标签?

如何在 networkx 中绘制不重叠的边缘标签?使用该选项scale看起来更好,但边缘标签仍然重叠,例如,

在此处输入图片说明

相关源码如下:

# build a graph
G.add_edge(u, v, r=value)

# plot the graph
pos = nx.spring_layout(G, scale=3)

nx.draw(G, pos)

edge_labels = nx.get_edge_attributes(G,'r')
nx.draw_networkx_edge_labels(G, pos, edge_labels = edge_labels)

plt.savefig(filename)
Run Code Online (Sandbox Code Playgroud)

python matplotlib networkx springlayout

6
推荐指数
1
解决办法
7181
查看次数

将 JPanel 添加到 JScrollPane

我有一个 gui,它有一个面板,其中包含一系列标签和文本字段,并使用弹簧布局(这是 mainPanel),另一个面板仅包含一个按钮(buttonPanel)。我试图让我的 mainPanel 也有一个垂直滚动条。我想实现我的 GUI,以便在 JFrame 中我有 2 个面板。mainPanel 出现在框架的顶部,buttonPanel 出现在mainPanel 的下方。

我的问题是我无法使面板出现,使按钮面板位于主面板下方,而且我也不知道如何向主面板添加滚动条。任何帮助,将不胜感激。

编辑:我能够解决有关 JPanel 的问题,现在我唯一的问题是我无法让我的 mainPanel 滚动。我在下面添加了最新的代码:

这是我到目前为止的代码:

public static void main(String args[]) {


            JFrame frame = new JFrame("SpringLayout");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            JScrollPane scroll = new JScrollPane();
            Container contentPane = frame.getContentPane();

           JButton next = new JButton("Next");
           JPanel buttonPanel = new JPanel();
           buttonPanel.add(next);
            SpringLayout layout = new SpringLayout();
            JPanel mainPanel = new JPanel();
            mainPanel.setLayout(layout);
            contentPane.setLayout(new BorderLayout());


            int j = 25;
            for(int i =0;i<150;i++){
                JLabel label = new JLabel("Enter Name " …
Run Code Online (Sandbox Code Playgroud)

java jpanel jscrollpane layout-manager springlayout

2
推荐指数
1
解决办法
3万
查看次数

如何将Component与SpringLayout对齐

我正在尝试使用Swing在Java中创建一个Form,我在管理布局时遇到了困难.

我希望在对话框的中心有一些带有标签的文本字段,并在右下角有"保存"和"关闭"按钮.

将对话框添加到对话框的右下方很简单,但我不确定如何居中对齐文本字段.我想,如果没有中心组件方法,那么我可以通过计算对话框窗口的中心来对齐字段,然后在重新调整对话框大小时更新位置.但我是新手,我不知道如何做(或者如果这是一个好主意).

如何使用Spring Layout Manager将组件对齐?

public class Main {
    public static void main(String args[]) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                MyFrame myFrame = new MyFrame();
                myFrame.setVisible(true);
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

这是帧的外观:

public class MyFrame extends JFrame {

    JLabel label1;
    JTextField field1;

    JLabel label2;
    JTextField field2;

    JButton saveButton;
    JButton closeButton;

    public MyFrame() {
        initLookAndFeel();
        initFrameProperties();
        initContent();
        initLayout();
    }

    private initContent() {
        label1= new JLabel("Label 1");
        field1= new JTextField();
        label1.setLabelFor(field1);

        label2= new JLabel("Label 2");
        field2= new JTextField();
        label2.setLabelFor(field2); …
Run Code Online (Sandbox Code Playgroud)

java swing layout-manager springlayout

1
推荐指数
1
解决办法
3658
查看次数

如何从JFrame表单获取输入?

我试图获取我在JFrame表单中提交的输入并将其存储在arraylist中.当我的ActionEvent发生时,我不确定如何获取我在文本字段中输入的内容.谁能告诉我怎么做?

我的表格目前看起来像 这个

这是我的代码:

public class SpringDemo {
    private static void createAndShowGUI() {
        final String[] labels = {"Bill: ", "Last Top Up Date: ", "Same Network? "};
        int labelsLength = labels.length;

        //Create and populate the panel.
        JPanel p = new JPanel(new SpringLayout());
        for (int i = 0; i < labelsLength; i++) {
            JLabel l = new JLabel(labels[i], JLabel.TRAILING);
            p.add(l);
            JTextField textField = new JTextField(10);
            l.setLabelFor(textField);
            p.add(textField);
        }
        JButton button = new JButton("Submit");
        p.add(new JLabel());
        p.add(button);

        //Lay out the panel.
        SpringUtilities.makeCompactGrid(p,
                                    labelsLength …
Run Code Online (Sandbox Code Playgroud)

java swing jframe jtextfield springlayout

1
推荐指数
1
解决办法
2万
查看次数