第十一周博客总结
1.课堂总结
1.面向抽象编程其实就是面向接口编程
2.要实现高内聚,接口单一,方法要高度总总结
3.对于异常处理来说,异常都是属于编译时异常(除了RunhimeExcrption),编译时异常不一定是编译时出现的异常,而是说它们不得不处理的异常
2.对于图形界面编程的学习
1.首先通过JFrame构建一个基本窗口
对于JFrame来说有俩个构造方法
一个就是如下的有参构造,输入的String是窗口的题目
另外一个就是无参构造,没有题目可以再窗口构建之后,再进行设置
JFrame f = new JFrame("聊天室");
f.setTitle("聊天室");
窗口组件常用的方法
void setTitle(String title)// 设置窗口的 标题
void setIconImage(Image image)// 设置窗口的 图标
void setSize(int width, int height)// 设置窗口的 宽高
void setDefaultCloseOperation(int operation)//设置界面上叉叉的作用(一般是退出并结束项目的运行)
void setResizable(boolean resizable)// 设置窗口是否可放大缩小
void setLocation(int x, int y)// 设置窗口的 位置(相对于屏幕左上角)
void setLocation(Point p)
void setBounds(int x, int y, int width, int height)// 设置窗口的 位置 和 宽高
void setBounds(Rectangle rect)
void setVisible(boolean b)// 设置窗口是否可见
boolean isShowing()// 判断窗口是否处于显示状态
2.根据自己的需求创建自己需要的组件,我这里创建的是一个聊天室,所以创建了一个文本域和文本框,文本域和文本框的区别只在于文本框只可以单行,而文本域可以多行
文本框常用的方法
String getText()// 获取文本框中的文本
void setText(String text)// 设置文本框的 文本、字体 和 字体颜色
void setFont(Font font)
void setForeground(Color fg)
void setCaretColor(Color c)// 设置颜色,分别为: 光标颜色、呈现选中部分的背景颜色、选中部分文本的颜色、不可用时文本的颜色
void setSelectionColor(Color c)
void setSelectedTextColor(Color c)
void setDisabledTextColor(Color c)
void setEditable(boolean b)// 设置文本框是否可编辑
文本域常用的方法
void setLineWrap(boolean wrap)// 是否自动换行,默认为 false
void setWrapStyleWord(boolean word)// 设置自动换行方式。如果为 true,则将在单词边界(空白)处换行; 如果为 false,则将在字符边界处换行。默认为 false。
String getText()// 获取文本框中的文本
// 设置文本框的 文本、字体 和 字体颜色
void setText(String text)
void setFont(Font font)
void setForeground(Color fg)
// 获取内容的行数(以换行符计算,满行自动换下一行不算增加行数)
int getLineCount()
// 设置颜色,分别为: 光标颜色、呈现选中部分的背景颜色、选中部分文本的颜色、不可用时文本的颜色
void setCaretColor(Color c)
void setSelectionColor(Color c)
void setSelectedTextColor(Color c)
void setDisabledTextColor(Color c)
// 设置文本框是否可编辑
void setEditable(boolean b)
// 设置组件是否可用
void setEnabled(boolean b)
JTextArea ta = new JTextArea(800,800);//文本域,能实现多行
JTextField tf = new JTextField(70);//文本框,只能单行
3.然后就是对于界面的初始化布局,布局有很多布局管理器,但是目前还尚未掌握…
public void init ()
{
f.setBounds(800,400,800,600);
// f.setLocationRelativeTo(null);//不论窗体多大,窗体运行起来都会出现在屏幕中心
JPanel input = new JPanel();//Panel面板
input.setBackground(Color.gray);//设置面板的颜色
f.add(ta);
input.add(tf);//将文本框加入面板里
f.add(input,BorderLayout.SOUTH);//将input面板设置在窗口南面
f.setVisible(true);//可视化设置
f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//界面中的叉叉代表的功能
}
暂时进程
package TESt;
import javax.swing.*;
import java.awt.*;
public class Run
{
JFrame f = new JFrame("聊天室");
JTextArea ta = new JTextArea(800,800);//文本域,能实现多行
JTextField tf = new JTextField(70);//文本框,只能单行
public void init ()
{
f.setBounds(800,400,800,600);
// f.setLocationRelativeTo(null);//不论窗体多大,窗体运行起来都会出现在屏幕中心
JPanel input = new JPanel();//Panel面板
input.setBackground(Color.gray);//设置面板的颜色
f.add(ta);
input.add(tf);//将文本框加入面板里
f.add(input,BorderLayout.SOUTH);//将input面板设置在窗口南面
f.setVisible(true);//可视化设置
f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//界面中的叉叉代表的功能
}
public static void main(String[] args) {
Run a = new Run();
a.init();
}
}