顶层容器:
组件 |
所属类 |
常用构造方法 |
JFrame |
javax.swing. JFrame |
JFrame ( ) |
JFrame (String s) |
||
JApplet |
javax.swing. JApplet |
略 |
JDialog |
javax.swing. JDialog |
JDialog () |
JDialog (Frame owner) |
||
JDialog (Frame owner,String title) |
||
JWindow |
javax.swing. JWindow |
略 |
中间容器:
组件 |
所属类 |
常用构造方法 |
JPanel面板 |
javax.swing.JPanel |
JPanel():创建具有双缓冲和流布局的新 JPanel |
JPanel (LayoutManager layout ) 创建具有 FlowLayout 和指定缓冲策略的新 JPanel
|
||
JScrollPane 滚动面板 |
javax.swing.JScrollPane |
JscrollPane() |
JScrollPane (Component view) |
||
JSplitPane 分隔面板 |
javax.swing.JSplitPane |
JSplitPane() |
JSplitPane(int newOrientation) |
||
JToolBar 工具栏 |
javax.swing.JToolBar |
JtoolBar() |
JtoolBar(String name) |
特殊容器:
组件 |
所属类 |
常用构造方法 |
JInternalFrame 内部窗体 |
javax.swing.JInternalFrame |
JInternalFrame() |
JInternalFrame (String title) |
||
JLayeredPane 分层面板 |
javax.swing.JLayeredPane |
JLayeredPane () |
JRootPane 根面板 |
javax.swing.JRootPane |
JRootPane () |
基本组件:
组件 |
所属类 |
常用构造方法 |
JButton 按钮 |
javax.swing.JButton |
JInternalFrame() |
JInternalFrame (String title) |
||
JComboBox 下拉列表 |
javax.swing.JComboBox |
JComboBox() |
Jmenu 菜单栏 |
javax.swing.JMenu
|
JMenu () |
JMenu(String s) |
||
JMenu(String s, boolean b) |
||
JTextField 单行文本框 |
javax.swing.JTextField |
JTextField() |
JList 列表 |
javax.swing.JList |
Jlist() |
Jlist(JlistModel dataModel) |
||
JList(Object[] listData) |
||
JList(Vector> listData) |
||
JCheckBox 复选框 |
javax.swing.JCheckBox |
JCheckBox () |
JCheckBox (Icon icon) |
||
JCheckBox(Icon icon, boolean selected) |
||
JCheckBox (String text) |
||
JCheckBox(String text, boolean selected) |
||
JRadioButton 单选按钮 |
javax.swing.JRadioButton
|
JRadioButton () |
JRadioButton (Icon icon) |
第一章字符串
1、获取字符串的长度:length()
2、判断字符串的前缀或后缀与已知字符串是否相同
前缀startsWith(Strings)、后缀endsWith(String s)
3、比较两个字符串:equals(String s)
4、把字符串转化为相应的数值
int型Integer.parseInt(字符串)、long型Long.parseLong(字符串)
float型Folat.valueOf(字符串).floatValue()
double型Double.valueOf(字符串).doubleValue()
5、将数值转化为字符串:valueOf(数值)
6、字符串检索
indexOf(Srting s) 从头开始检索
indexOf(String s ,int startpoint) 从startpoint处开始检索
如果没有检索到,将返回-1
7、得到字符串的子字符串
substring(int startpoint) 从startpoint处开始获取
substring(int start,int end) 从start到end中间的字符
8、替换字符串中的字符,去掉字符串前后空格
replace(char old,char new) 用new替换old
9、分析字符串
StringTokenizer(String s) 构造一个分析器,使用默认分隔字符(空格,换行,回车,Tab,进纸符)
StringTokenizer(String s,String delim) delim是自己定义的分隔符
nextToken() 逐个获取字符串中的语言符号
boolean hasMoreTokens() 只要字符串还有语言符号将返回true,否则返回false
countTokens() 得到一共有多少个语言符号
第二章文本框和文本区
1、文本框
TextField() 构造文本框,一个字符长、TextField(int x) 构造文本框,x个字符长
TextField(String s) 构造文本框,显示s、setText(String s) 设置文本为s
getText() 获取文本、setEchoChar(char c) 设置显示字符为c
setEditable(boolean) 设置文本框是否可以被修改、addActionListener() 添加监视器
removeActionListener() 移去监视器
2、文本区
TextArea() 构造文本区;TextArea(String s) 构造文本区,显示s
TextArea(String s,int x,int y) 构造文本区,x行,y列,显示s
TextArea(int x,int y) 构造文本区,x行,y列
TextArea(String s,int x,ing y,int scrollbar)
scrollbar的值是:
TextArea.SCROLLBARS_BOTH;TextArea.SCROLLBARS_VERTICAL_ONLY
TextArea.SCROLLBARS_HORIZONTAL_ONLY;TextArea.SCROLLBARS_NONE
setText(String s) 设置文本为s;getText() 获取文本
addTextListener() 添加监视器;removeTextListener() 移去监视器
insert(String s,int x) 在x处插入文本s
replaceRange(String s,int x,int y) 用s替换从x到y处的文本
append(String s) 在文本的最后追加文本s
Int getCaretPosition(int n) 获取文本区中光标的位置
第三章按钮
1、按钮
Button() 构造按钮;Button(String s) 构造按钮,标签是s
setLabel(String s) 设置按钮标签是s;getLabel() 获取按钮标签
addActionListener() 添加监视器;removeActionListener() 移去监视器
第四章标签
1、标签
Label() 构造标签;Label(String s) 构造标签,显示s
Label(String s,int x)x是对齐方式,取值:Label.LEFT;Label.RIGHT;Label.CENTER
setText(String s) 设置文本s;getText() 获取文本
setBackground(Color c) 设置标签背景颜色;setForeground(Color c) 设置字体颜色
第五章选择框
1、选择框
Checkbox() 构造选择框;Checkbox(String s) 构造选择框,给定标题s
Checkbox(String s,boolean b) b设定初始状态
Checkbox(String s,boolean b,CheckboxGroup g) g设定了所属的组(有了组就成为单选框)
addItemListener() 添加监视器;removeItemListener() 移去监视器
getState() 返回选择框的是否选中状态;setState(boolean b) 设置选择框的状态
getLabel() 获取选择框的标题;setLabel(String s) 设置选择框的标题为s
第六章选择控件和滚动列表
1、选择控件
Choice() 构造选择控件;add(String s) 向选择控件增加一个选项
addItemListener() 添加监视器;removeItemListener() 移去监视器
getSelectedIndex() 返回当前选项的索引;getSelectedItem() 返回当前选项的字符串代表
insert(String s,int n) 在n处插入选项s
remove(int n);removeAll()
2、滚动列表
List() 构造滚动列表;List(int n) 参数n是可见行数
List(int n,boolean b) 参数b是设置是否可以多项选择
add(String s) 向列表的结尾增加一个选项;add(String s,int n) 在n处增加一个选项
AddActionListener() 滚动列表添加监视器
addItemListener() 滚动列表上的选项添加监视器
remove(int n) 删除n初的选项;remnoveAll() 删除全部选项
getSelectedIndex() 返回当前选项的索引;getSelectedItem() 返回当前选项的字符串代表
3、组件类的一些常用方法
void setBackground(Color c) 设置组件背景颜色
void setForeground(Color c) 设置组件前景颜色
void setFonts(Font f) 设置组件字体
void setBounds(int x,int y,int w,int h) 设置坐标,x,y表示在容器中坐标,w,h表示宽和高
void setLocation(int x,int y) 移动到x,y 处;void setSize(int w,int h) 设置宽和高
void setVisible(boolean b) 设置组建是否可见
int getBounds().wigth 获取宽;int getBounds().height 获取高
int getBounds().x 获取x 坐标;
注意
1. 要固定JComboBox大小有两个地方需要关注的。
1、你的JComboBox放的面板的布局是什么类型的布局,如果不是null布局就调整布局来给JComboBox分配合适的大小。
2、如果你用的是空布局的话,那么用setSize方法 或者 setBounds方法,来改变JComboBox大小
setBounds可以改变控件的大小和位置。
2. Java中setBounds和setSize有什么区别:bounds就是size和location的结合体
GUI和UI的区别
专业和理性的客观角度来来讲:
UI = User Interface
其中包括所有人(User)与机器(Machine)打交道用的界面接口(Interface),因此如果你去设计一个起重机的操作面板、汽车仪表盘、电视摇控器,都可以称为UI Design,他是工业设计中的一个术语. 。
UI即UserInterface(用户界面)的简称。UI设计是指对软件的人机交互、操作逻辑、界面美观的整体设计。好的UI设计不仅是让软件变得有个性有品位,还要让软件的操作变得舒适简单、自由,充分体现软件的定位和特点。软件设计可分为两个部分:编码设计与UI设计。UI的本意是用户界面,是英文User和Interface的缩写。从字面上看是用户与界面2个部分组成,但实际上还包括用户与界面之间的交互关系。
UI设计师的职能大体包括三方面:一是图形设计,即传统意义上的“美工”。当然,实际上他们承担的不是单纯意义上美术工人的工作,而是软件产品的产品“外形”设计。二是交互设计,主要在于设计软件的操作流程、树状结构、操作规范等。一个软件产品在编码之前需要做的就是交互设计,并且确立交互模型,交互规范。三是用户测试/研究,这里所谓的“测试”,其目标恰在于测试交互设计的合理性及图形设计的美观性,主要通过以目标用户问卷的形式衡量UI设计的合理性。如果没有这方面的测试研究,UI设计的好坏只能凭借设计师的经验或者领导的审美来评判,这样就会给企业带来极大的风险。
研究界面
图形设计师GraphicUI designer
国内大部分UI工作者都是从事这个行业。也有人称之为美工,但实际上不是单纯意义上的美术工人,而是了解软件产品、致力于提高软件用户体验的产品外形设计师。随着时间的推移,美工这个词将渐渐淡出。
这些设计师大多是美术院校毕业的,其中大部分是有美术设计教育背景,例如工业外形设计,装潢设计,信息多媒体设计等。
人与界面
交互设计师interactiondesigner
在图形界面产生之前,长期以来UI设计师就是指交互设计师。交互设计师的工作内容就是设计软件的操作流程,树状结构,软件的结构与操作规范(spec)等。一个软件产品在编码之前需要作的就是交互设计,并且确立交互模型,交互规范。
交互设计师一般都是软件工程师背景居多,也有视觉设计师转行进入的。
交互指的是产品与它的使用者之间的互动过程,而交互设计师则是秉承以用户为中心的设计理念,以用户体验度为原则,对交互过程进行研究并开展设计的工作人员。
产品经理考虑要做什么产品才有价值,交互设计师考虑怎么把这个想法最有效 的转化成一系列的界面展现给用户。除了展现,还有和用户的交互。这个展现、交互的过程就需要一定的表达能力。这种表达能力并不是我们平时所特指的口头表达,而是使用网页语言表达。我们经常会讨论一个按钮的位置,讨论某个状态下光标的样式,讨论应该写成“登录”而非“登陆”等等:这些都是网页语言表达。
有些时候,有些交互设计师会问,“网页上的文字要我来写吗?产品经理比我 了解的更清楚,他(她)们写吧?”如果说交互设计师应该具备“善于表达”的特点,那么网页上的文字就应该由交互设计师来编写。虽然产品经理更了解产品,然而交互设计师才是最懂得如何向用户表达的人。我们会讨论“你”还是“我”这样的称谓问题,也会注意不要在页面上出现“用户”这样的字眼:这些都是文字表达 的问题。
研究人
用户测试/研究工程师User experience engineer
任何的产品为了保证质量都需要测试,软件的编码需要测试,自然UI设计也需要被测试。这个测试和编码没有任何关系,主要是测试交互设计的合理性以及图形设计的美观性。测试方法一般都是采用焦点小组,用目标用户问卷的形式来衡量UI设计的合理性。这个职位很重要,如果没有这个职位,UI设计的好坏只能凭借设计师的经验或者领导的审美来评判,这样就会给企业带来严重的风险性。
用户研究工程师一般是心理学人文学背景比较合适。
综上所述UI设计师就是:软件图形设计师、交互设计师、用户研究工程师。
GUI = Graphical User Interface
是指在计算机(computing)出现后,在屏幕上使用图形界面来帮助(User)与机器(Machine)打交道用的界面接口(Interface),泛指在计算机上所做的界面设计
狭义上讨论我们正在讨论的IT互联网行业,UI即是GUI的简称,这二者没有任何区别。我是个GUI设计师,或我是个UI设计师,是一样的。
在设计GUI或UI的过程中,我们通过可用性(Usability)的手段和方法论,来提高用户对与计算机交互过程的满意度,这个过程我们通常俗称用户体验设计(UX)