说明:
1.想了很久 其实真的不想写这块的内容,原因有三个
1.java gui目前现状比较被动,一提java 有多少人 第一反应是C/S结构呢?
2.个人对这方面实践经验很少
3.个人比较关注 javafx2,真心祝愿oracle能用javafx2挽回GUI的失地
2.所以这里只做简单的介绍和指引,出个小例子 大家尝尝吧
3.java的GUI编程(Graphic User Interface,图形用户接口)
4.java 通过AWT或Swing来创建GUI,开发建议使用Netbeans(有图形化编辑界面)
5.指引:AWT、Swing、Swt、容器、组件、布局、事件处理
6.不多说了 上个例子
package com.cxy.gui; import java.awt.DisplayMode; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ButtonGroup; 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.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JSlider; import javax.swing.JSpinner; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.SpinnerNumberModel; /** * @author cxy */ public class ShowComponent { public static JFrame jf = new CxyJFrame("组件测试"); public static JPanel jp=new JPanel(); public static JLabel jl1=new JLabel("文本框演示"); public static JLabel jl2=new JLabel("文本域演示"); public static JLabel jl3=new JLabel("多选按钮"); public static JLabel jl4=new JLabel("单选按钮"); public static JLabel jl5=new JLabel("下拉框按钮"); public static JLabel jl6=new JLabel("滑块"); public static JLabel jl7=new JLabel("调节文本框"); public static JButton jbu=new JButton("按钮和事件"); /** * 组件测试 展示常用的组件 * JLabel、JTextField */ public static void main(String[] args) { jp.setLayout(null); jl1.setBounds(0, 0, 80, 20); JTextField jtf=new JTextField("文本框"); jtf.setBounds(90, 0, 100, 20); jp.add(jl1); jp.add(jtf); jl2.setBounds(0, 30, 80, 20); JTextArea jta=new JTextArea(); jta.setRows(5); //设置行 jta.setColumns(5); //设置列 jta.setBounds(90, 30, 150, 150); jp.add(jl2); jp.add(jta); //带滚动条的文本框 JTextArea jta1=new JTextArea("带滚动条的文本框,长啊长啊长啊长\r\n1\r\n2\r\n3\r\n4\r\n5\r\n6\r\n7\r\n"); JScrollPane jsp=new JScrollPane(jta1); jsp.setBounds(400, 30, 150, 150); //jsp.setBackground(Color.blue); jsp.setVisible(true); jp.add(jsp); //多选按钮 jl3.setBounds(0, 200, 80, 20); JCheckBox jcb=new JCheckBox("java"); jcb.setBounds(90, 200, 50, 20); jcb.setSelected(true); JCheckBox jcb1=new JCheckBox("javascript"); jcb1.setBounds(150, 200, 100, 20); JCheckBox jcb2=new JCheckBox("sql"); jcb2.setBounds(250, 200, 60, 20); jp.add(jcb); jp.add(jcb1); jp.add(jcb2); jp.add(jl3); //单选按钮 ButtonGroup bg = new ButtonGroup(); JRadioButton jrb=new JRadioButton("男"); JRadioButton jrb1=new JRadioButton("女"); jl4.setBounds(0, 230, 80, 20); jrb.setBounds(90, 230, 60, 20); jrb1.setBounds(150, 230, 60, 20); //只有将单选按钮放到一个组内才能出现单选效果 bg.add(jrb); bg.add(jrb1); jp.add(jrb); jp.add(jrb1); jp.add(jl4); //下拉框 JComboBox jbox=new JComboBox(); jbox.addItem("北京"); jbox.addItem("天津"); jbox.addItem("上海"); jl5.setBounds(0, 260, 80, 20); jbox.setBounds(90, 260, 80, 20); jp.add(jl5); jp.add(jbox); //滑块 JSlider jser=new JSlider(0,100,66); jl6.setBounds(0, 310, 80, 50); jser.setBounds(90, 310, 200, 50); jser.setPaintLabels(true); jser.setPaintTicks(true); jser.setMajorTickSpacing(100); jser.setMinorTickSpacing(0); //jser.setPaintTrack(true); jp.add(jl6); jp.add(jser); System.out.println(jser.getValue()); //调节组件 JSpinner jsper =new JSpinner(new SpinnerNumberModel(5,0,10,0.5)); jl7.setBounds(0, 380, 80, 20); jsper.setBounds(90, 380, 50, 20); jp.add(jl7); jp.add(jsper); jbu.setBounds(0, 480, 150, 60); jp.add(jbu); //注册监听事件 ActionListener al=new MyListtener(); jbu.addActionListener(al); //匿名内部类 //好处: //1.简化代码 //2.可以访问本类的成员变量 jbu.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { jbu.setText("已经点击"); } }); jf.add(jp); jf.setVisible(true); } } //自定义的事件监听器 class MyListtener implements ActionListener { public void actionPerformed(ActionEvent e) { System.out.println("点击按钮的事件"); JFrame jfe=new JFrame(); JLabel jlab=new JLabel("点击按钮的事件"); jfe.add(jlab); jfe.setSize(100, 100); jfe.setLocation(100, 100); jfe.setVisible(true); } } /** 创建一个屏幕居中的窗口 */ class CxyJFrame extends JFrame { public CxyJFrame(String title) { this.setTitle(title); int appW=800; int appH=600; this.setSize(appW, appH); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); GraphicsEnvironment graphicsEnvironment = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice graphicsDevice = graphicsEnvironment.getDefaultScreenDevice(); DisplayMode displayMode = graphicsDevice.getDisplayMode(); int pingmuW=displayMode.getWidth(); int pingmuH=displayMode.getHeight(); this.setLocation((pingmuW-appW)/2, (pingmuH-appH)/2); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } }
声明:
1.原创文章,转载请标明并加本文连接。
2.更详尽的API请参见 http://docs.oracle.com/javase/7/docs/api/
3.文章反映个人愚见,如有异议欢迎讨论指正
相关推荐
《Java基础之GUI:探索图形化界面编程的魅力》
Java GUI编程是Java应用程序中创建图形用户界面的一种方式。在Java中,我们主要使用Java AWT(Abstract Window Toolkit)和Swing库来构建GUI。...总之,理解GUI编程的基本原理和事件处理机制是构建Java桌面应用的基础。
java基础GUI框架完成的贪吃蛇小游戏.zipjava基础GUI框架完成的贪吃蛇小游戏.zip java基础GUI框架完成的贪吃蛇小游戏.zipjava基础GUI框架完成的贪吃蛇小游戏.zip java基础GUI框架完成的贪吃蛇小游戏.zipjava基础GUI...
Java项目“考试系统Java基础Gui”是一个基于Java和GUI技术构建的应用程序,主要目标是实现一个功能完善的在线考试平台。这个系统充分利用了Java语言的强大功能和GUI库,如Java Swing,来提供用户友好的界面和高效的...
JAVA基础-GUI JAVA基础-GUI是指在JAVA中关于图形用户界面的相关知识,主要包括GUI的概念、JAVA提供的GUI对象、布局管理器、事件监听机制等。 1. GUI概念: GUI是Graphical User Interface的缩写,中文名称为图形...
"JavaGUI编程基础入门" JavaGUI编程入门基础是学习Java图形用户界面编程的必备知识,涵盖了AWT和Swing包的基础知识。下面是JavaGUI编程基础入门的详细知识点: AWT包简介 AWT(Abstract Window Toolkit)是Java...
Java GUI(图形用户界面)开发是...通过实际操作,开发者能够更好地掌握Java Swing库,为创建复杂的桌面应用程序打下坚实基础。对于初学者来说,不断实践和接受反馈是提高的关键,这个小程序就是一个很好的实践平台。
首先,让我们深入了解一下Java GUI的基础。Java提供了两种主要的GUI工具包:Swing和JavaFX。Swing是早期的GUI库,包含许多组件,如JFrame(主窗口)、JButton(按钮)、JLabel(标签)、JTextField(文本字段)等,...
本教程将深入探讨Java GUI的基础知识,包括核心概念、组件、布局管理器以及事件处理机制。 首先,我们要理解Java GUI的基本构建块——AWT(Abstract Window Toolkit)和Swing库。AWT是Java最初的GUI库,提供了基本...
Java GUI程序设计
本文介绍了Java GUI编程的基础知识,包括创建窗口、添加组件、实现事件监听器等内容。通过这个示例,我们可以看到如何构建一个具有简单功能的GUI应用。对于初学者来说,掌握这些基础知识对于进一步学习高级GUI技术至...
1. **Java基础**:首先,你需要熟悉Java编程语言的基础,包括语法、类、对象、方法以及异常处理。实验中的代码将会基于面向对象编程原则进行编写。 2. **Swing库**:为了构建GUI,我们将使用Java Swing库。Swing...
- **Swing**是在AWT基础上发展起来的新一代GUI开发包,完全用Java编写,具有良好的跨平台性。Swing提供了更多高级组件,并且可以定制外观,使得开发者能构建更为美观和功能强大的应用程序。 #### 三、AWT与Swing的...
首先,你需要安装Java Development Kit (JDK),这是编写、编译和运行Java程序的基础。确保你的系统已经安装了JDK,并且`JAVA_HOME`环境变量已经设置正确。 2. **选择库**: Java中有多种库支持二维码生成,例如...
Java GUI 基础知识点总结 Java GUI(Graphical User Interface)是指图形化用户界面,旨在提高用户与计算机之间的交互性。Java 语言为 GUI 提供了完善的支持,主要通过 java.awt 和 javax.swing 两个包来实现。 一...
这个任务适合大学二年级的学生作为编程作业,特别是在学习Java基础和GUI编程时。Java GUI允许开发者创建丰富的、交互式的应用程序,使得用户可以通过点击按钮、输入数据等方式与程序进行交互。我们将主要关注以下...
JAVA 编程教学PPT ,JAVA课件
Java的核心理念之一就是“编写一次,到处运行”(Write Once, Run Anywhere,简称WORA),这使得基于AWT开发的具有标准GUI元素(如下拉菜单、命令按钮和滚动条等)的应用程序能够跨多种操作系统平台运行而无需进行...
本资源“javaGUI编程基础源码”提供了一系列已调试通过的基础代码示例,帮助初学者理解和实践GUI编程。 GUI(图形用户界面)是用户与计算机系统交互的一种方式,通过图形元素如按钮、文本框、菜单等进行操作。在...