仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1445|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA网页设计java制造接待屏幕123

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:44:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
先谈谈我对java的一些认识。我选择java,是因为他语法简单,功能强大,从web,到桌面,到嵌入式,无所不能。但当我进一步了解了java后,感叹,java原来也有许多缺点。我们能够在使用程序的入手下手到场一个接待屏幕。接待屏幕既是宣扬产物的办法之一,并且在长工夫的使用启动过程当中,接待屏幕还用来暗示使用正在筹办过程当中。

1。最复杂的接待屏幕完成:

classSplashWindow1extendsJWindow
{
 publicSplashWindow1(Stringfilename,Framef)
 {
  super(f);
  JLabell=newJLabel(newImageIcon(filename));
  getContentPane().add(l,BorderLayout.CENTER);
  pack();
  DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();
  DimensionlabelSize=l.getPreferredSize();
  setLocation(screenSize.width/2-(labelSize.width/2),
  screenSize.height/2-(labelSize.height/2));
  setVisible(true);
  screenSize=null;
  labelSize=null;
 }
}

  SplashWindow1类从Swing的JWindow派生。JWindow是一个容器,它没有其他窗口所具有的各类窗口元素,如题目条、窗口办理按钮,乃至连凸起显现的边框也没有。因而,JWindow关于制造接待屏幕来讲长短常符合的。下面的代码假定图形文件在以后目次。图形经由过程ImageIcon装进内存,然后它就被放到了JWindow的中央。接着,窗口被pack(),这使得Swing把窗口调剂到得当的巨细,最初窗口被移到了屏幕的中央。

2。假如我们运转下面的程序,能够发明固然接待画面的确呈现在屏幕中心,但遗憾的,它却不会封闭!要封闭接待画面,我们必要到场更多的代码:

classSplashWindow2extendsJWindow
{
 publicSplashWindow2(Stringfilename,Framef)
 {
  super(f);
  JLabell=newJLabel(newImageIcon(filename));
  getContentPane().add(l,BorderLayout.CENTER);
  pack();
  DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();
  DimensionlabelSize=l.getPreferredSize();
  setLocation(screenSize.width/2-(labelSize.width/2),
  screenSize.height/2-(labelSize.height/2));
  addMouseListener(newMouseAdapter()
  {  
   publicvoidmousePressed(MouseEvente)
   {
    setVisible(false);
    dispose();
   }
  });
  setVisible(true);
 }
}


  和本来的SplashWindow1类比拟,这个SplashWindow2类独一的区分在于多出了一个安装到JWindow上的匿名MouseListener。经由这个修改以后,用户能够点击接待屏幕封闭它。

3。如今我们有了一个很不错的接待屏幕,它能够经由过程点击的办法封闭,但它不会本人消散。接上去我们要到场代码,使得接待屏幕在显现必定的工夫以后主动消散。这里我们要思索到使用线程。

classSplashWindow3extendsJWindow
{
 publicSplashWindow3(Stringfilename,Framef,intwaitTime)
 {
  super(f);
  JLabell=newJLabel(newImageIcon(filename));
  getContentPane().add(l,BorderLayout.CENTER);
  pack();
  DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();
  DimensionlabelSize=l.getPreferredSize();
  setLocation(screenSize.width/2-(labelSize.width/2),
  screenSize.height/2-(labelSize.height/2));
  addMouseListener(newMouseAdapter()
  {
   publicvoidmousePressed(MouseEvente)
   {
    setVisible(false);
    dispose();
   }
  });
  finalintpause=waitTime;
  finalRunnablecloserRunner=newRunnable()
  {
   publicvoidrun()
   {
    setVisible(false);
    dispose();
   }
  };
  RunnablewaitRunner=newRunnable()
  {
   publicvoidrun()
   {
    try
    {
     Thread.sleep(pause);
     SwingUtilities.invokeAndWait(closerRunner);
    }
    catch(Exceptione)
    {
     e.printStackTrace();
     //可以捕捉InvocationTargetException
     //可以捕捉InterruptedException
    }
   }
  };
  setVisible(true);
  ThreadsplashThread=newThread(waitRunner,"SplashThread");
  splashThread.start();
 }
}

  这里的基础思绪是使用一个在必定工夫内停息守候的Thread对象。在下面的代码中,线程的停息工夫是4秒。当这个线程叫醒时,它将封闭接待屏幕。因为Swing长短线程平安的,除非代码在事务分拨线程上实行,不然它就不该该影响任何UI组件的形态。所谓事务分拨线程,就是Swing中卖力画图和事务处置的线程。

  为懂得决这个成绩,Swing计划者付与我们平安地把Runnable对象到场UI事务行列的才能。在本例中,我们用可运转对象closerRunner完成最关头的事情。我们把可运转对象传进SwingUtilities.invokeAndWait()静态办法,然后wingUtilities.invokeAndWait()举行一切未完成的UI操纵,并实行传送给该办法的可运转对象closerRunner的run办法。经由过程使用一个自力的线程卖力接待屏幕的封闭操纵,使用担当起了显现和封闭接待屏幕之间的一切操纵。

  假如要让接待屏幕老是显现且用户不克不及封闭它,你必需删除那些埋没接待屏幕的代码。假如要让接待屏幕只能由用户手工封闭,你能够象利用任何其他JWindow对象一样挪用SplashWindow3对象上的setVisible(false)和dispose()办法。


还有就是总有人问我到底该学习什么语言,什么语言有前途,那么我的回答是不论是C,C++,java,.net,ruby,asp或是其他语言都可以学,编程的关键不是语言,而是思想。
只想知道 该用户已被删除
沙发
发表于 2015-1-21 13:43:48 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
变相怪杰 该用户已被删除
板凳
发表于 2015-1-30 19:31:28 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
小女巫 该用户已被删除
地板
发表于 2015-2-2 22:15:38 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
admin 该用户已被删除
5#
发表于 2015-2-8 12:25:22 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
蒙在股里 该用户已被删除
6#
发表于 2015-2-25 12:08:34 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
再现理想 该用户已被删除
7#
发表于 2015-2-25 23:51:17 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
兰色精灵 该用户已被删除
8#
发表于 2015-3-1 17:29:04 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
小魔女 该用户已被删除
9#
发表于 2015-3-17 10:10:23 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
乐观 该用户已被删除
10#
发表于 2015-3-18 02:07:03 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
因胸联盟 该用户已被删除
11#
发表于 2015-3-25 08:59:44 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
冷月葬花魂 该用户已被删除
12#
发表于 2015-3-27 20:11:05 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
不帅 该用户已被删除
13#
发表于 2015-4-1 14:54:29 | 只看该作者
是一种突破用户端机器环境和CPU
莫相离 该用户已被删除
14#
发表于 2015-4-11 05:08:54 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
山那边是海 该用户已被删除
15#
发表于 2015-4-14 13:53:06 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
透明 该用户已被删除
16#
发表于 2015-4-17 22:49:44 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
分手快乐 该用户已被删除
17#
发表于 2015-4-23 17:53:49 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
金色的骷髅 该用户已被删除
18#
发表于 2015-5-7 05:46:04 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
小妖女 该用户已被删除
19#
发表于 2015-5-7 08:04:32 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
活着的死人 该用户已被删除
20#
发表于 2015-6-20 09:32:36 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:43

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表