时光飞逝,转眼之间大学时光已经走尽将半。这段时间,自己对JAVA的学习重拾了自己以前的学习激情,大一下个学期学校开设了C++课程,教的并不是很深,然后自己也很少往深处钻研,类与对象和文件那块没有学好,其他知识还是比较拿手的;然后大二上个学期为了过计算机二级C语言(由于类和对象没学好,一不做,二不休就报了C语言 ),在已有C++基础上自学了C语言。最近接触到蓝杰这块跟着老师的脚步刚开始学习JAVA,由于有以前的基础,学的时候就很得心应手。学到图形界面Swing的时候,非常期待,因为用C或者C++以前写程序都没没有设计到图形界面,这个设计图形界面的简单易操作是其他语言远不能及的。只不过那些插件的引用有点繁多而且复杂,很难记忆。再者,自己的美学造诣比较局限,距离设计一个优美的图形界面好有点距离。但我相信在以后的学习中慢慢提高,不断写出更没的界面和更高效的程序。 附上一段老师的QQ登录界面的代码
package cn.netjava.lesson05; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Font; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JPasswordField; /** * QQ登录界面 * @author XiongXiangJun * */ public class QQLogin { /** * 定义程序的入口主函数 */ public static void main(String[] args) { QQLogin qq = new QQLogin(); qq.initGUI(); } /** * 定义一个初始化界面的方法 */ public void initGUI(){ //1.实例化一个JFrame类的对象 JFrame jf = new JFrame(); //2.设置jf对象的属性值 jf.setTitle("QQ登录界面"); jf.setSize(new Dimension(380,295)); jf.setDefaultCloseOperation(3); jf.setLocationRelativeTo(null);//设置窗体显示在屏幕的中央 jf.setResizable(false);//设置禁止调整窗体的大小 //设置窗体的布局方式为边框布局,窗体默认的布局方式就是边框布局 //jf.setLayout(new BorderLayout()); /******************窗体背景*********************/ //实例化一个图标对象 ImageIcon backgroundImage = new ImageIcon("qqImages/background.jpg"); //实例化一个标签对象,让标签显示图标对象 JLabel backgroundJla = new JLabel(backgroundImage); //设置标签的起始位置和标签的大小 backgroundJla.setBounds(0, 0, backgroundImage.getIconWidth(), backgroundImage.getIconHeight()); //添加到窗体的LayeredPanel面板的最底层(第二层面板) jf.getLayeredPane().add(backgroundJla,new Integer(Integer.MIN_VALUE)); //获取窗体的第一层面板 JPanel contentPanel = (JPanel)jf.getContentPane(); //设置第一层面板为透明 contentPanel.setOpaque(false); /************************************************/ /****************北边的面板*********************/ JPanel northPanel = new JPanel(); northPanel.setOpaque(false);//设置面板为透明 northPanel.setPreferredSize(new Dimension(0,120)); //设置面板的布局方式为边框布局,JPanel默认的布局方式是流式布局 northPanel.setLayout(new BorderLayout()); //实例化一个JLabel的对象,并且让标签上显示图标 JLabel jla = new JLabel("追梦。设计"); jla.setFont(new Font("楷体",Font.BOLD,36)); //将jla对象添加到northPanel对象上 northPanel.add(jla,BorderLayout.WEST); //将northPanel添加到jf窗体的北边 jf.add(northPanel,BorderLayout.NORTH); /**********************************************/ /****************西边的面板*********************/ JPanel westPanel = new JPanel(); westPanel.setOpaque(false);//设置面板为透明 //设置面板的布局方式为流式布局,JPanel默认的布局方式是流式布局 westPanel.setLayout(new FlowLayout()); //实例化一个图标(ImageIcon)对象 ImageIcon image = new ImageIcon("qqImages/0.jpg"); //实例化一个JLabel的对象,并且让标签上显示图标 JLabel jlaImage = new JLabel(image); //将jlaImage对象添加到westPanel对象上 westPanel.add(jlaImage); //将westPanel添加到jf窗体的西边 jf.add(westPanel,BorderLayout.WEST); /**********************************************/ /****************中间的面板*********************/ JPanel centerPanel = new JPanel(); centerPanel.setOpaque(false);//设置面板为透明 //设置面板的布局方式为流式布局,靠左侧显示组件,JPanel默认的布局方式是流式布局 centerPanel.setLayout(new FlowLayout(FlowLayout.LEFT,8,5)); //实例化组件类的对象 JComboBox jco = new JComboBox(); //设置组件的大小 jco.setPreferredSize(new Dimension(190,25)); //设置jco对象可以编辑 jco.setEditable(true); //将jco对象添加到centerPanel对象上 centerPanel.add(jco); JLabel jbuReg = new JLabel("注册账号"); centerPanel.add(jbuReg); JPasswordField jpa = new JPasswordField(); //设置组件的大小 jpa.setPreferredSize(new Dimension(190,25)); //将jpa对象添加到centerPanel对象上 centerPanel.add(jpa); JLabel jbuPwd = new JLabel("找回密码"); centerPanel.add(jbuPwd); JCheckBox jch1 = new JCheckBox("记住密码"); jch1.setOpaque(false); JCheckBox jch2 = new JCheckBox("自动登录"); jch2.setOpaque(false); centerPanel.add(jch1); centerPanel.add(jch2); //将centerPanel添加到jf窗体的中间 jf.add(centerPanel,BorderLayout.CENTER); /**********************************************/ /****************南边的面板*********************/ JPanel southPanel = new JPanel(); southPanel.setOpaque(false);//设置面板为透明 //设置面板的布局方式为流式布局,JPanel默认的布局方式是流式布局 southPanel.setLayout(new FlowLayout()); JButton jbuLogin = new JButton("登 录"); jbuLogin.setPreferredSize(new Dimension(155,30)); //将jbuLogin对象添加到southPanel对象上 southPanel.add(jbuLogin); //将southPanel添加到jf窗体的南边 jf.add(southPanel,BorderLayout.SOUTH); /**********************************************/ //设置窗体为可见的代码一定要放置在最后一行 jf.setVisible(true); } }
相关推荐
Java语言,作为网络时代的编程语言,因其独特的优势和特性,被广泛应用于各种软件开发和互联网应用。它由Sun Microsystems公司创建,旨在解决网络环境下的跨平台编程问题。Java的哲学可以概括为“一次编写,到处运行...
**初次接触GWT:知识点概括** Google Web Toolkit(GWT)是Google推出的一款开源的JavaScript开发框架,它允许开发者使用Java语言来编写Web应用程序。GWT通过编译器将Java代码转换为高效的JavaScript,从而在浏览器...
Java程序设计课件:第一章 初次邂逅Java.ppt
《献给初次接触汇编者》是一套专为初学者设计的汇编语言学习资料,旨在帮助新手系统地理解和掌握汇编语言的基础知识。汇编语言是计算机科学的基础,它是直接对应于机器指令的编程语言,对于理解计算机硬件工作原理和...
本资料包是官方提供的关于SIM908的初次接触指南,对于开发者来说,是深入理解并进行开发工作的重要参考资料。 首先,"用户指南"是了解SIM908功能特性和操作流程的关键。这份文档通常会包含模块的基本信息,如规格...
初见杀可能是指初次接触Apollo时,就能快速上手并感受到其强大功能的魅力。Apollo平台包含了高精度地图、定位、感知、决策、控制等多个模块,为开发者提供了丰富的工具和资源,帮助他们专注于自动驾驶算法的研发,而...
"Java从入门到精通之工具篇"是一个专门为初次接触Java的学习者设计的教程,旨在通过一问一答的方式,帮助初学者快速掌握Java的基础知识和常用工具。 首先,让我们探讨Java语言基础。Java是一种面向对象的语言,它的...
鼠标操作基本练习,方便初次接触电脑人掌握鼠标使用鼠标操作基本练习,方便初次接触电脑人掌握鼠标使用鼠标操作基本练习,方便初次接触电脑人掌握鼠标使用鼠标操作基本练习,方便初次接触电脑人掌握鼠标使用鼠标操作...
CorelDRAWX中文基础教程与上机指导初次接触PPT课件.pptx
### JAVA工程师开发的经验分享 #### 一、JDBC与MySQL数据库连接 对于任何从事Web开发的Java工程师来说,掌握如何通过Java程序与数据库进行交互是非常关键的技能之一。JDBC (Java Database Connectivity) 是Java中...
CorelDRAWX中文基础教程与上机指导初次接触实用实用教案.ppt
标题:汇编语言的准备知识--给初次接触汇编者(1) 在计算机科学领域,汇编语言是一种低级程序设计语言,它直接对应于计算机的机器指令集,是理解和控制计算机硬件的重要桥梁。对于初次接触汇编语言的学习者而言,...
CorelDRAWX中文基础教程与上机指导初次接触实用PPT课件.pptx
CorelDRAWX中文基础教程与上机指导初次接触实用学习教案.pptx
java程序设计(java语言)初次学习必要安装软件
CorelDRAWX中文基础教程与上机指导初次接触实用PPT学习教案.pptx
这个系统为参赛者提供了练习编程技能的机会,特别是对于初次接触ACM(国际大学生程序设计竞赛)的选手来说,是一个很好的学习工具。 在杭电ACM在线评测系统中,支持的编程语言包括Pascal和Java。如果你使用的是其他...
这份“初次接触Carsim学者的培训资料”旨在为初学者提供一个快速了解和掌握Carsim的基础平台。以下是对这份资料内容的详细解读: 1. **Carsim软件介绍**: Carsim是美国Software Solutions公司开发的一款高级车辆...