Java的GroupLayout问题,设置组件的问题

问题描述

Java的GroupLayout问题,设置组件的问题 30C
代码显示没有错误,但是运行的时候老是在控制台显示错误,错误提示如下《:Exception in thread ""AWT-EventQueue-0"" java.lang.IllegalStateException: javax.swing.JLabel[000x0invalidalignmentX=0.0alignmentY=0.0border=flags=8388608maximumSize=minimumSize=preferredSize=defaultIcon=disabledIcon=horizontalAlignment=LEADINGhorizontalTextPosition=TRAILINGiconTextGap=4labelFor=text=账号登录名:verticalAlignment=CENTERverticalTextPosition=CENTER] is not attached to a vertical group》
当然这个是我认为比较有依据的一句话

源代码如下:
public class AddAccount extends JPanel{

/** *  */private static final long serialVersionUID = 1L;//public static AddAccount addAccount;   JLabel lblIdlblLoginNamelblPasswordlblRealNamelblType;//设置地址,登录名,登录密码,真实姓名,    JLabel lblIdMesslblNameMesslblPassMesslblRealMess;//    JTextField txtIdtxtNametxtRealName;    JPasswordField txtPassword;    JComboBox cboType;    JButton btnOkbtnReset;public AddAccount(){    initComponent();}public void initComponent(){    this.setPreferredSize(new Dimension(6000));//设置初始大小    lblId=new JLabel(""账号编号:"");    lblLoginName=new JLabel(""账号登录名:"");    lblPassword=new JLabel("" 登录密码 :"");    lblRealName=new JLabel("" 真实姓名 :"");    lblType=new JLabel("" 账号类型 :"");    //设置JLabel    txtId=new JTextField();    txtName=new JTextField();    txtRealName=new JTextField();    //设置JTextField()方法    txtPassword=new JPasswordField();     String [] items =new String[]{""管理员""业务员""操作员""};//创建账号类型     cboType = new JComboBox(items);     btnOk=new JButton(""确定"");     btnReset=new JButton(""重置"");     lblIdMess=new JLabel(""编号由系统生成,不用修改"");     lblNameMess=new JLabel(""账号长度在5到20位之间"");     lblPassMess=new JLabel(""密码长度必须在5到20位之间"");     lblRealMess=new JLabel(""姓名长度必须在1到20位之间"");     //F/GroupLayout创建文本框的横竖位置     GroupLayout group=new GroupLayout(this);     GroupLayout.SequentialGroup hgroup=group.createSequentialGroup();     hgroup.addGroup(group.createParallelGroup(Alignment.LEADING)             .addComponent(lblIdGroupLayout.PREFERRED_SIZE100GroupLayout.PREFERRED_SIZE)             .addComponent(lblLoginNameGroupLayout.PREFERRED_SIZE100GroupLayout.PREFERRED_SIZE)//登录账号             .addComponent(lblPassword)//登录密码             .addComponent(lblRealName)//真实姓名             .addComponent(lblType)             );     hgroup.addGroup(group.createParallelGroup(Alignment.CENTER)//             .addComponent(txtIdGroupLayout.PREFERRED_SIZE100GroupLayout.PREFERRED_SIZE)             .addComponent(txtName)             .addComponent(txtPassword)             .addComponent(txtRealName)             .addComponent(cboType)             .addGroup(group.createParallelGroup())             .addComponent(btnOk)             .addComponent(btnReset)             );     hgroup.addGroup(group.createSequentialGroup()             .addComponent(lblIdMess)             .addComponent(lblNameMess)             .addComponent(lblPassMess)             .addComponent(lblRealMess));     //     GroupLayout.SequentialGroup vgroup=group.createSequentialGroup();     vgroup.addGroup(group.createParallelGroup(Alignment.CENTER)             .addComponent(lblId)             .addComponent(txtId)             .addComponent(lblIdMess)             );     vgroup.addGroup(group.createParallelGroup(Alignment.CENTER)             .addComponent(lblLoginName)             .addComponent(txtName)             .addComponent(lblNameMess)             );     vgroup.addGroup(group.createParallelGroup(Alignment.CENTER)             .addComponent(lblPassword)             .addComponent(txtPassword)             .addComponent(lblPassMess)             );     vgroup.addGroup(group.createParallelGroup(Alignment.CENTER)             .addComponent(lblRealName)             .addComponent(txtRealName)            // .addComponent(lblRealMess)             );     vgroup.addGroup(group.createParallelGroup(Alignment.CENTER)             .addComponent(lblType)             .addComponent(cboType)             );     vgroup.addGroup(group.createParallelGroup(Alignment.CENTER)             .addComponent(btnOk)             .addComponent(btnReset)             );     group.setHorizontalGroup(hgroup);     group.setVerticalGroup(hgroup);     this.setLayout(group);     }

解决方案

希望 各位帮帮忙,这种情况出现好几次了,我总是找不到解决的办法,拜托拜托

解决方案二:
group.setVerticalGroup(hgroup); 改成 group.setVerticalGroup(vgroup);

解决方案三:
Android中的RelativeLayout中组件的排放问题

时间: 2024-10-18 05:54:03

Java的GroupLayout问题,设置组件的问题的相关文章

java swing 布局,设置jpanel大小,位置

问题描述 java swing 布局,设置jpanel大小,位置 jpanel.setsize...这个为什么不生效?总是布满整个窗口,我只想一小块在中间. 注意:这个方法如果不行,有别的方法吗? 绝对布局除外 解决方案 JFrame你设置Layout了吗? 如果没设置的话,JFrame的布局管理器默认是BorderLayout,添加的组件如果不指明位置默认添加进BorderLayout.CENTER. 它会向上下左右扩展,占满整个空间. 解决方案二: public class GridBagL

Android中设置组件半透明和透明的效果示例

本文介绍了Android是如何设置组件半透明和透明的效果,分享出来供大家参考,下面来看看详细的介绍: 1.Button或者ImageButton的背景设为透明或者半透明 半透明 <Button android:background="#e0000000" ... /> 透明 <Button android:background="#00000000" ... /> 颜色和不透明度 (alpha) 值以十六进制表示法表示.任何一种颜色的值范围都

Grails1.1和Groovy1.6的Java虚拟机的内存设置和调整

在这篇文章中,我希望回答下列问题: .Grails1.1和Groovy1.6的Java虚拟机的内存设置和调整隐藏在哪里,以及我们如何来改变它们? .最新的版本和旧的版本之间有什么不同? .以上这些设置和调整在windows和linux之间的不同需要我们掌握吗? Grails1.1和Grails1.0.2的Java虚拟机的内存设置 如果你运行grails命令,在linux/unix平台,它是执行"$GRAILS_HOME/bin/startGrails"命令:而在windows平台,是执

java 文本域 字符串 设置颜色

问题描述 java 文本域 字符串 设置颜色 java里面的JTextArea文本域里 设置某个字符串的颜色? 如何 解决方案 设置颜色多变的文本(转载)设置编辑框控件的背景.文本颜色 解决方案二: 你会更改java文本域的字体大小吗? 同样也可以同样的操作设置颜色 解决方案三: 用JEditorPane或者JTextPane

java在linux里设置环境变量后,提示没有那个目录?

问题描述 java在linux里设置环境变量后,提示没有那个目录? 我是放在./opt下的,所属人, 所属组也都设置完了, 请大牛.这是怎么回事,在线等 解决方案 root@ubuntu-2:~# cd /opt/java/jdk1.7 root@ubuntu-2:/opt/java/jdk1.7# cd bin root@ubuntu-2:/opt/java/jdk1.7/bin# ls appletviewer jarsigner javap jdb jps jvisualvm rmic t

安卓-Android网格布局怎么设置组件占满指定的行和列?

问题描述 Android网格布局怎么设置组件占满指定的行和列? enter code here <GridLayout xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_heigh

java 图形化 怎样设置每一个JTabbedPane的内容

问题描述 java 图形化 怎样设置每一个JTabbedPane的内容 对java swing这块实在不熟悉.开发需要,不得不实现一下 已有代码如下,需要在JTabblePane中实现一个柱状图: package swingTest; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.b

java-求大神帮忙,在Java串口通信中设置DTR_CONTROL_DISABLE如何实现?

问题描述 求大神帮忙,在Java串口通信中设置DTR_CONTROL_DISABLE如何实现? 写了简单一个串口调试助手的程序,用来与STM32单片机通信,但是 DCB.fDtrControl = DTR_CONTROL_ENABLE的参数不对,使用下载的调试助手可以实现通信其DCB.fDtrControl值为DTR_CONTROL_DISABLE,自己写的却是DTR_CONTROL_ENABLE?是这个原因影响通讯了吗?如果是要如何改进? 解决方案 http://gqdy365.iteye.c

java path的简单设置问题

问题描述 java path的简单设置问题 请大神帮忙看一下为什么使用路径在bin est下使用javac说找不到 解决方案 1.系统变量→新建 JAVA_HOME 变量 . 变量值填写jdk的安装目录(我的就是D:Javajdk1.7.0) 系统变量→寻找 Path 变量→编辑 在变量值最后输入 %JAVA_HOME%in;%JAVA_HOME%jrein; 解决方案二: 环境变量没配置对,参考配置一下:http://jingyan.baidu.com/article/f96699bb8b38