《Java应用程序(Application)》
- 在编写Java应用程序(Application)时可以这样:
- 1,定义包名.
- 2, 导入相关的包.
- 3, 定义一个类。
- 4,定义相关变量。
- 5,定义构造函数。(在构造函数内调用init()方法和addEvents()方法)
- 6, 在init()函数中组合各种组件。
- 7,在addEvents()方法中为各种组件添加事件监听器。(可以有异常的捕获及声明)。
- 8,定义主函数。在主函数中创建一个本类的对象就可以了。
- 通过构造函数就可以完成调用程序的各种功能。
- 例子如下:
- package myclass;
- import java.awt.FileDialog;
- import java.awt.Frame;
- import java.awt.Menu;
- import java.awt.MenuItem;
- import java.awt.MenuBar;
- import java.awt.TextArea;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.WindowEvent;
- import java.awt.event.WindowAdapter;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileReader;
- public class Demo1
- {
- private Frame frame;
- private MenuBar menuBar;
- private Menu menu;
- private Menu subMenu;
- private MenuItem exitItem,openFileItem;
- private FileDialog openFile;
- private TextArea ta;
- //构造函数.
- public Demo1(){
- init();
- addEvents();
- }
- public void init(){
- frame = new Frame("菜单测试");
- frame.setBounds(300,200,500,400);
- //菜单栏.
- menuBar = new MenuBar();
- //菜单。
- menu = new Menu("文件");
- //菜单项.
- openFileItem = new MenuItem("打开");
- exitItem = new MenuItem("退出");
- //添加菜单项.
- menu.add(openFileItem);
- menu.add(exitItem);
- //菜单栏添加菜单.
- menuBar.add(menu);
- frame.setMenuBar(menuBar);
- //文本域.
- ta = new TextArea();
- frame.add(ta);
- frame.setVisible(true);
- }
- public void addEvents(){
- frame.addWindowListener(new WindowAdapter(){
- public void windowClosing(WindowEvent e){
- System.exit(0);
- }
- });
- //菜单单击退出.
- exitItem.addActionListener(new ActionListener(){
- public void actionPerformed(ActionEvent e){
- System.exit(0);
- }
- });
- //打开文件.
- openFileItem.addActionListener(new ActionListener(){
- public void actionPerformed(ActionEvent e){
- openFile = new FileDialog(frame,"打开文件",FileDialog.LOAD);
- openFile.setVisible(true);
- String dirName = openFile.getDirectory();
- String fileName = openFile.getFile();
- System.out.println(dirName);
- //读取展示文件.
- if(dirName == null || fileName == null){
- return;
- }
- File file = new File(dirName,fileName);
- try
- {
- BufferedReader br = new BufferedReader(new FileReader(file));
- String line;
- StringBuilder text = new StringBuilder();
- while((line = br.readLine())!=null){
- text.append(line);
- text.append("\r\n");
- }
- ta.setText(text.toString());
- }
- catch (Exception e1)
- {
- e1.printStackTrace();
- }
- }
- });
- }
- public static void main(String[] args)
- {
- new Demo1();
- }
- }
《Java应用程序(Application)》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- Surface与SurfaceView、SurfaceHolder
什么是Surface? android API的解释是:Handle onto a raw buffer that is being managed by the screen compositor ...
- 了解Android的编译器
了解一下Android的编译器并记录下来: Android在4.4以前是使用Dalvik VM的,通过Just In Time(JIT即时编译)来完成编译工作,在Android4.4提供了一种测试版本 ...
- CSS的一些小技巧
1.黑白图像img.desaturate { filter: grayscale(100%); -webkit-filter: grayscale(100%); -moz-filter: graysc ...
- java web 之 SpringMVC4.x配置
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 综述: 有 ...
- PHP之OOP要点摘要
类和对象: 类是生成对象的模板,对象是活动组件; 面向对象编程实际操作都是通过类的实例(而不是类本身)完成的: 访问控制(public.protected.private):(1) ...
- 使用简单NGUI加载进度条
1.在Panel上添加Slider,GNUI--Open--Widget Wizard--Slider,设置Empty和Full 2.在Panel上添加Label,GNUI--Open--Widget ...
- Windows添加和取消右键管理员权限
亲测可用 新建文本文档,粘贴下列代码 Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\runas]@="管理员取 ...
- 深入浅出Mybatis系列(七)---mapper映射文件配置之insert、update、delete
上篇文章<深入浅出Mybatis系列(六)---objectFactory.plugins.mappers简介与配置>简单地给mybatis的配置画上了一个句号.那么从本篇文章开始,将会介 ...
- Windows 10系统更换Windows 7系统磁盘分区注意事项一
新买的电脑预装系统是WIN10,考虑到兼容性问题,打算更换为WIN7,但在新机上不能直接装WIN7系统,需要在BIOS启动中做一点小改动. 原因分析:由于Windows 8采用的是UEFI引导和GPT ...
- css中的一些概念
1.伪类与伪元素 1.单冒号(:)用于 CSS3 伪类,双冒号(::)用于 CSS3 伪元素. 2.对于 CSS2 中已经有的伪元素,例如 :before,单冒号和双冒号的写法 ::before 作用 ...