【问题标题】:JButtons dont get the Correct Size and LocationJButtons 没有得到正确的大小和位置
【发布时间】:2011-04-21 19:35:05
【问题描述】:

您好,我的某些按钮有问题

我想用 JButtons 创建一个简单的 GUI,但是当我启动应用程序时,每次启动应用程序时按钮的位置和大小都会发生变化。 我使用此代码:

    usr_in.setSize(120,40);

usr_in.setLocation(10,40); usr_in 是一个 JButton

这样创建的:

JButton usr_ro = new JButton("Users");

我在这里设置它们:

menu.setLayout(new GridLayout(1, 1, 0, 3));
menu.add(usr_ro);

我使用库:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import java.beans.*;
import java.applet.*;
import java.*;

感谢帮助

【问题讨论】:

  • 欢迎来到 SO!你的menu 对象是什么类型的?

标签: java swing jbutton


【解决方案1】:

我发现最好的做法是将您的按钮放在使用 FlowLayout 的 JPanel 中。如果您没有过多地摆弄父容器布局,则按钮的大小不应变化。

【讨论】:

    【解决方案2】:

    首先,两个问题:menu 的类型是什么? usr_inusr_ro 一样吗?这些名称显然不一样,但您的措辞暗示它们应该是相同的。

    从您目前提供的信息来看,问题似乎在于您正试图以两种不同的方式设置按钮的位置。在一个地方,您使用的是setLocation(),它“由该组件父级的坐标空间中的 x 和 y 参数指定”。 (source)

    稍后,您将使用GridLayout,它以自己的方式设置位置:将它们拟合到网格中。 (source) 我不认为如果你同时应用这两种行为,这种行为是明确定义的,但我有点惊讶的是你每次都没有得到相同的不需要的行为。

    【讨论】:

      猜你喜欢
      • 2019-06-18
      • 1970-01-01
      • 2021-09-29
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 2016-01-23
      • 1970-01-01
      • 2020-02-22
      相关资源
      最近更新 更多