JAVA GUI重要知识点学习心得
来源:互联网 发布:c语言嵌入式汇编 编辑:程序博客网 时间:2024/06/01 19:39
本人最近学习javaGUI发现重要知识点和思想用的频率很高,把它们整理下来一起分享
1:JFrame窗口和JDialog窗口
一班JFrame用作主窗口,JDialog用作弹出窗口(即对话框),但JFrame也可以用作弹出窗口并设置一些功能。下面就看一个这类窗口的基本构造方法:很多适用于窗体额方法其部件也很适用的。
import java.awt.*;import javax.swing.*;public class JFrame窗口 {public static void creatjframe(String title){JFrame jf=new JFrame(title); //实例化一个JFrame对象Container container=jf.getContentPane(); //获取一个容器JLabel jl=new JLabel("这是第一个JFrame窗体",JLabel.CENTER); //标签剧中//jl.setHorizontalAlignment(SwingConstants.CENTER);//居中对齐等价替换为上一行container.add(jl); //将标签添加到容器中container.setBackground(Color.yellow); //背景颜色 jf.setResizable(false); //不可拉伸jf.setVisible(true); //设置可见jf.setSize(400,300); //设置大小 jf.setLocationRelativeTo(null);// 剧中放置,要在setsize后面放置jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//窗体关闭方式}public static void main(String[] args){creatjframe("创建一个JFrame窗体");}}这里做一些说明:
1):一般情况下不这样构造,而是采用构造类继承JFrame这样,再类中构造,例如:
public class jframe extends JFrame{
public jframe(){ this.****;this.*** }
public static void main(String[] args){new jframe();} }
这样构造要方便很多,因为此类本身就是一个窗体的继承类,他拥有窗体的性质。可以使用this.setVisible(true);函数也可以直接用setvisible(true);有个小技巧就是使用函 数时候先点一个点会出来可以使用的函数附图如下.
2)窗体的背景颜色是有层次的并且会被遮挡,例如container设置额容器颜色会遮挡jframe的背景颜色,而JPanel的背景颜色会遮住container容器的背景颜色,JPanel添加子类器件,子器件的背景颜色会遮住JPanel的颜色。元件的层次与原件添加的位置有关(添加再哪里)。
3)居中设置为啥要再setsize后面?因为如果再setsize之前就设置剧中窗体没有大小就会默认一个点再屏幕中间,设置大小会以这个点向右下方扩散而不是以这个点为中心扩散。
2:元件
1):JButton:+鼠标监听事件(这里的鼠标监听也可以写成类继承监听接口,添加监听。再类中重写actionperforded函数。个人喜好问题)
JButton bl=new JButton("弹出对话框"); bl.setBounds(10,20, 100, 21); bl.setContentAreaFilled(false);//透明bl.setBorderPainted(false);bl.setFocusPainted(false); bl.addActionListener(new ActionListener() {//建立监听事件 public void actionPerformed(ActionEvent e) { if(e.getsourse()==b1){****;} } });
监听的如果是按钮数组,则for(;i<**;i++){if(e.getsourse()==b[i]){ //添加要监听的事件 }}
不仅仅按钮可以添加鼠标监听,文本框,复选框都可以添加鼠标监听事件。
2)其他元件
JPanel panel1 = new JPanel();//面板元件。可使用布局,可添加元件。本身可以作为一个容器也可以作为局部容器。常用于画图,详细可参考我的另一篇五子棋博客;
JTextField jt1=new JTextField("8",10);文本有数字‘8’的单行文本。可添加监听。
JTextArea jt=new JTextArea(3,10);//创建文本区系数代表大小,纯文本多行区域
JCheckBox jc2=new JCheckBox("2");复选框
3)容器+鼠标点击事件
常见有container容器,JPanel面板添加鼠标点击事件,点击的坐标可由int x=e.getX();获得,int y=e.getY();获得。可以在这个点添加你需要添加的事情,详情可以看我的那篇五子棋实现过程。
4)常见布局:setlayout(new 布局方式())
绝对布局:setlayout (null);元件需要用setbounds(int,int,int,int)分别代表坐标和长宽。(setbounds=setsize(int,int)设置大小加setlocation(int,int)设置位置(单位像素。))绝对布局很少用。
边界布局:borderlayout(),分为east,west,north,south,center。五个方向,一班中间偏大,其他部位没有使用会自动被其他位置挤占,可以使用上中下三部分,也可以使用左中右三部分。经常使用此类布局。
流布局:floutlayout(),默认剧中对齐,按排版满就换行,局部容器使用该布局较多。
网格布局:gridlayout()网格布局设置特定数量,对于整齐对称密集排布比较好用。
box布局:box本身也是一个容器。
girdbaglayout布局:此类布局使用效率比较高。。。下次继续写。
- JAVA GUI重要知识点学习心得
- Java GUI基本知识点
- Java GUI基本知识点
- Java 重要知识点
- JAVA重要知识点
- Java重要知识点总结
- java 知识点(重要)
- java 知识点(重要)
- java 知识点(重要)
- Java 重要知识点
- java 知识点(重要)
- Java中重要知识点
- Java重要知识点总结
- Java重要知识点
- java重要知识点
- java重要的知识点!
- Java学习心得之GUI编程(一)
- Java学习心得之GUI编程(二)
- Java7提供了简化关闭资源的try语句:try-with-resources自动关闭资源的try语句
- java设计模式学习—桥接(Bridge)模式
- Spring-三种依赖注入方式
- vue项目封装axios
- RESTClient下载 RESTful Http接口测试工具 -- RESTClient下载
- JAVA GUI重要知识点学习心得
- sphinx教程2---安装、配置和使用
- MyBatis集合Spring(四)之使用Spring处理事务
- 解析c语言中可变参数列表
- centos6.4 /etc/resolv.conf文件改了重启网络就自动还原了
- Windows线程启动到消亡的运行状态
- PHP 导出csv格式excel
- 如何检验你是否是一个合格的初级java开发者
- 文件指针偏移的相关函数(rewind ftell fseek)