我有一个名为LoginFrame的类,它必须显示一个包含登录表单的JFrame对象:
package com.techub.crystalice.gui.login;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JLabel;
import org.jdesktop.application.SingleFrameApplication;
import com.techub.crystalice.gui.Constants;
import com.techub.crystalice.gui.GUI;
public class LoginFrame extends SingleFrameApplication {
@Override
protected void startup() {
// TODO Auto-generated method stub
System.out.println("DENTRO: LoginFrame() ---> startup()");
JFrame loginFrame = this.getMainFrame();
Dimension minimumSize = new Dimension(400, 250);
loginFrame.setMinimumSize(minimumSize);
loginFrame.setTitle("XCloud Login");
JLabel userName = new JLabel("Username:");
JLabel pswd = new JLabel("Password:");
loginFrame.add(userName);
loginFrame.add(pswd);
show(loginFrame);
//show(new JLabel("Hello World"));
}
public static void main(String[] args) {
System.out.println("DENTRO: LoginFrame() ---> main()");
launch(LoginFrame.class, args);
}
}
abstrac类SingleFrameApplication自动为我提供JFrame对象,我在该对象上设置了一些属性(维度和标题)。
然后尝试添加两个JLabel对象,分别显示字符串“username:”和“password:**
TNX
安德里亚
简单的解决方案:将JLabels放入一个JPanel中,然后将该JPanel放入JFrame中。
更长的答案:你的问题是布局。默认情况下,JFrame(或者更正确地说,它的contentPane)使用BorderLayout,当您在不使用int常量辅助参数的情况下向其中添加组件时,默认情况下您将该组件放置到BorderLayout.Center位置。最后添加的组件将覆盖之前添加的所有组件。然而,JPanel默认使用FlowLayout,添加到它的所有组件都将按照FlowLayout的规则依次添加。
这一切的关键是阅读关于如何使用Swing布局管理器的教程,然后玩弄它们以更好地学习使用它们。
我必须插入一个JFrame,另一个类的一个JPanel。我在JFrame中有一个jMenuItem,我希望这样,当我单击jMenuItem,就会出现JPanel。
问题内容: 如何在Java的JLabel中使用html标签? 问题答案: 要将html放在中,您可以使它看起来像这样
问题内容: 我正在尝试用GUI制作棋盘游戏。我用 播放器的名称创建了一个JLabel,并希望将其用作令牌。然后,我制作了另一个JLabel, 其中包含板的图像。我将两个标签都添加到boardPanel上, 现在,这些标签并排放置。我如何做到这一点, 以使JLabel带有名称而不是并排放置在带有img的JLabel上? 对于包含两个 标签的面板,我应该考虑些什么吗?像某个布局管理器一样? [只是我的
我的应用程序中并排有一个JTree和JList。当我将节点从JTree拖到JList时,我已添加到