相关疑难解决方法(0)

如何在JPanel中添加带有null布局的JTable?

我想添加JTableJPanel其布局中null. JPanel包含其他组件.我必须添加JTable适当的位置.

java layout jtable layout-manager null-layout-manager

232
推荐指数
6
解决办法
4万
查看次数

在Swing GUI中提供空白区域

没有空白区域的GUI显得"拥挤".如何在不借助明确设置组件的位置或大小的情况下提供空白区域?

java swing whitespace layout-manager

158
推荐指数
5
解决办法
4万
查看次数

如何垂直对齐JLabel-JTextField对

我所说的JLabel-JTextField对是一个JLabel组件,后跟一个JTextField组件,例如"参数1:-----",其中"-----"表示空白的JTextField.

问题是,由于参数名称的长度不同,JLabel的宽度会有所不同,因此JTextField的起点不会垂直对齐.

有没有办法将JLabel垂直对齐到右边,以便后面的JTextField的开头会对齐?谢谢.

java user-interface swing alignment

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

按边缘排列摆动组件

是否可以排列摆动组件?组件位于单独的面板中,两者都使用流动布局.这两个面板位于使用网格布局的另一个面板中.

图片

你可以看到有一个微妙的区别,我觉得很烦人.我知道所有的jlabels [蓝色/紫色的矩形都有相同的大小,所以我认为它可能是因为'+'和'*',但我不确定因为第一个的左边两个盒子没有排成一列.

面板

JPanel panel2 = new JPanel(new GridLayout(4, 1));
JPanel panel2a = new JPanel(new FlowLayout());
JPanel panel2b = new JPanel(new FlowLayout());
Run Code Online (Sandbox Code Playgroud)

前两个矩形(紫色)

add1 = new JLabel("", JLabel.CENTER);
add1.setTransferHandler(new TransferHandler("text"));
add1.setBorder(b2);
add2 = new JLabel("", JLabel.CENTER);
add2.setTransferHandler(new TransferHandler("text"));
add2.setBorder(b2);
Run Code Online (Sandbox Code Playgroud)

两个蓝色矩形

textFieldA = new JTextField();
textFieldA.setHorizontalAlignment(JTextField.CENTER);
textFieldA.setEditable(false);
textFieldA.setBorder(new LineBorder(Color.blue));
textFieldM = new JTextField();
textFieldM.setHorizontalAlignment(JTextField.CENTER);
textFieldM.setEditable(false);
textFieldM.setBorder(new LineBorder(Color.blue));
Run Code Online (Sandbox Code Playgroud)

+和*

opA = new JLabel("+", JLabel.CENTER);
opS = new JLabel("*", JLabel.CENTER);
Run Code Online (Sandbox Code Playgroud)

显示矩形大小相同

Dimension d = card1.getPreferredSize(); 
int width = d.width + 100;
int …
Run Code Online (Sandbox Code Playgroud)

java swing alignment vertical-alignment layout-manager

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

Java Swing使用ActionListener清理代码

我想在我的程序中制作更清晰的代码.所以我试图压缩我的代码来创建按钮:

以前,我需要每次复制一次:

Dimension JButton_Cryption_Size = JButton_Cryption.getPreferredSize();
        JButton_Cryption.setBounds(5, 5, JButton_Cryption_Size.width + 50, JButton_Cryption_Size.height);
        JButton_Cryption.setFocusPainted(false);

        JButton_Cryption.addActionListener(this);

        add(JButton_Cryption);
Run Code Online (Sandbox Code Playgroud)

但现在我做了这个方法:(不要注意按钮名称,它们是用于测试)

public JButton  JButton_Testing1,
                    JButton_Testing2,
                    JButton_3;

    private void addJButton(JButton ButtonName, String Name, int x, int y, int width, int height, String ToolTip, boolean FocusedPainted, boolean Opaque, boolean ContentAreaFilled, boolean BorderPainted){
        ButtonName = new JButton(Name);

        Dimension Button_Size = ButtonName.getPreferredSize();
        if(width == 0){
            ButtonName.setBounds(x, y, Button_Size.width, height);
        }if(height == 0){
            ButtonName.setBounds(x, y, width, Button_Size.height);
        }if(width == 0 && height == 0){
            ButtonName.setBounds(x, y, Button_Size.width, Button_Size.height);
        }if(width != …
Run Code Online (Sandbox Code Playgroud)

java swing code-cleanup actionlistener

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