Chinaunix首页 | 论坛 | 博客
  • 博客访问: 584469
  • 博文数量: 61
  • 博客积分: 4112
  • 博客等级: 上校
  • 技术积分: 749
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-27 16:20
文章分类

全部博文(61)

文章存档

2016年(1)

2013年(1)

2012年(2)

2010年(1)

2008年(2)

2007年(25)

2006年(29)

分类: Java

2006-10-27 20:50:22

    前几天看了一些J2ME的书,每本书都假设你有Java的基础,郁闷,我根本没接触过,这几天在学习Java的一些东西,刚开始觉得比较困难,学了几天入门后发现进展很快,也了解了一些java的运行机制,真正理解了什么叫面向对象,虽然以前学过c++但是真正面向对象的东西根本没做过,以前都是面向过程的,发现面向对象在解决大问题上还是很有优势的,特别是在图形方面。
    接着就要开始学习J2ME了,不过书都是E文的,看来又要硬头皮看了。
    参加了学校的软件设计大赛,准备用J2ME做一个基于移动平台的软件,截至到12月份,可要加紧学习了。
    下面是写的一个很简单的java程序,有注释。
 
 

package myprojects.example;

import javax.swing.*;
import java.awt.event.*;
import java.awt.*;

class ButtonPanel extends JPanel implements ActionListener//说明此类为监听器类

{
    private JButton bt;
    private String szEvtSource;
    
    public ButtonPanel()//Panel构造函数

    {
        bt = new JButton ("Hello");//定义按钮

        add (bt);//在Panel上加这个按钮

        bt.addActionListener(this);//指定监听器对象为JPanel

    }
    
    public void actionPerformed(ActionEvent evt)//当有事件响应时执行下面代码

    {
        Object src = evt.getSource();//得到事件源对象

        if (src.equals(bt))//如果是按钮的事件

        {
            szEvtSource = "Hello";
        }
        Graphics g = getGraphics();//得到当前图形上下文

        draw(g);//调用传值

    }
    
    public void draw(Graphics g)
    {
        String szMsg;
        szMsg = "You've pressed me--" + szEvtSource;
        g.drawString(szMsg,20,60);//指定位置输出一个字符串

    }
}

class ButtonFrame extends JFrame
{
    public ButtonFrame()//Frame构造函数

    {
        setLocation(100,100);//设置初始位置

        setSize(300,200); //设置Frame大小

        setTitle ("My action");//设置标题

        
        Container ctPane = getContentPane();//得到当前容器

        ctPane.add(new ButtonPanel());//在当前容器里加一个层

    }
}

class Example
{
    public static void main(String[] args)//程序入口处

    {
        ButtonFrame a = new ButtonFrame();//建立一个Frame对象

        a.setVisible(true);                 //设置为可见

    }
}

阅读(1430) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~