Swing程序设计

1.常用窗体(组件的承载体)
JFrame:是Swing程序中各个组件的载体,可以将其看作是承载这些Swing组件的容器,拥有最大化、最小化、关闭等按钮。JFrame对象创建完成后,需要调用getContentPane()方法将窗体转换为容器,使用container.add()添加组件
JDialog:是Swing组件中的对话框,功能是从一个窗体中弹出另一个窗体,在使用时也需调用getContentPane()方法将窗体转换为容器,然后在容器中设置窗体特性
JLabel:可以显示一行只读文本、一个图像或带图像的文本,并不能产生任何类型的事件,只简单显示文本和图片,但可指定标签上文本的对齐方式;可创建图标,也可使用图片图标


2.常用布局管理器(组件在容器中位置)


绝对布局:使用Container.setLayout(null)方法取消布局管理器;使用Component.setBounds()方法设置每个组件的大小与位置  setBounds(int x,int y,int width,int height)x与y分别代表窗体在整个屏幕上出现的位置,width宽,height长


流布局管理器:从左到右摆放组件,直到占据了这一行所有空间,然后再向下移动一行,每一行上居中排列
             public FlowLayout(int alignment,int horizGap,int vertGap) alignment=0→FlowLayoutLEFT  alignment=1→FlowLayoutCENTER alignment=2→FlowLayoutRIGHT


边界布局管理器:在默认不指定窗体布局情况下,Swing组件的布局格式是边界布局管理器,将容器划分为东、南、西、北、中5个区域BorderLayout.NORTH


网格布局管理器:组件按行和列进行排列,每个组件大小相同,网格中空格个数由网格的行数和列数决定 public GridLayout(int rows(行),int columns(列),int horizGap(网格之间水平间距),int vertGap(网格之间垂直间距))




3.常用面板(可作为容器容纳其他组件,必须添加到其他容器中)


JPanel面板:可首先设置整个窗体布局,然后定义面板,分别为面板设置布局,再将按钮等组件放置在每个面板中,最后将面板添加至容器中


JScrollpane面板:带滚动条,只能放一个组件,并且不可以使用布局管理器,如果需要放置多个组件,需要将组件放置在JPanel面板,然后将JPanel面板作为一个整体组件添加在JScrollPane组件中




4.按钮组件(触发特定动作)


提交按钮组件:public JButton(String text,Icon icon)指定按钮上显示的图标、文字
              setIcon()定制图标、setToolTipText()设置提示文字、setBorderPainted()设置按钮边界是否显示、setMaximumSize(new Dimension())设置按钮的大小与图标大小一致、setEnabled()设置按钮是否可用


单选按钮组件:默认情况下显示为一个圆形图标 public JRadioButton(String text,Icon icon,boolean selected(默认属性是否被选中))


按钮组:ButtonGroup group=new ButtonGroup() 创建一个ButtonGroup对象group调用add()方法添加单选按钮


复选框组件:public JCheckBox(String text/Icon icon,Boolean checked)设置图标,设置复选框的文字是否被选中 
            JTextArea.append()方法为文本域添加文字




5.列表组件


下拉列表框组件:public JComboBox() 下拉列表框中的内容可以被封装在ComboBoxModel类型、数组或Vector类型中
                ComboBoxModel为接口,代表一般模型,可自定义一个类实现该接口,然后在初始化JComboBox对象时向上转型为ComboBoxModel接口→JComboBox jc=new JComboBox(new MyComboBox()),必须实现 public void setSelectedItem(Object item)(设置下拉列表框中选项)
                  public Object getSelectedItem()(返回下拉列表框中选中项),还可继承AbstractListModel类,该类中有getSize()返回列表长度、getElementAt()返回指定索引处的值
列表框组件:在窗体上占据固定的大小,可将列表框放入滚动面板中,使其具有滚动效果
            public void JList() 无参初始化后使用setListData()对列表框进行设置/初始化过程中对列表框中项目进行设置(3种类型 数组、Vector类型、ListModel模型)


6.文本组件
文本框组件:显示或编辑一个单行文本  public JTextField(String text,int fieldwidth) 可在初始化文本框时设置文本框的默认文字、文本框的长度等
密码框组件:使用户输入的字符串以某种符号进行加密 public JPasswordField(String text,int fieldwidth) setEchocChar()可改变密码框的回显字符
文本域组件:接受用户的多行文字输入  public JTextArea(Document doc,String Text,int rows,int columns) setLineWrap()设置文本域是否可以自动换行(true)




7.常用事件监听器
动作事件监听器 :addActionListener()增加监听器 removeActionListener() 
                定义内部类实现ActionListener接口  需重写actionPerformed()方法,一个类中不可重写两次该方法,所以为事件源做监听事件时,使用内部类来解决这个问题


焦点事件监听器:addFocusListener()添加监听器



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值