第一个javaApplication界面小程序

今天晚上完成了第一个自己写的javaApplication界面小程序,顺便贴在这里,就当是保存了。


程序原代码如下:


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

public class GamesAppGraphics
{
	public static void main(String[] args)
	{
		new FrameInOut();
	}
}

class FrameInOut extends Frame implements ActionListener
{
	JButton btn1,btn2,btn3,btn4;
	JTextArea ta1,ta2;
	JPanel p1,p2,p3;
	FrameInOut()
	{
		super("Java小程序");
		this.setFont(new Font("隶体",Font.BOLD,100));
		this.setBackground(Color.pink);
		/*初始化各个按钮*/
		btn1=new JButton("水仙花数");
		btn2=new JButton("Roll点");
		btn3=new JButton("完全数");
		btn4=new JButton("退出");
		/*初始化文本域*/
		/*初始化文本域的大小,行列数*/
		ta1=new JTextArea(10,25);
		ta2=new JTextArea(10,25);
		/*初始化面板,将个空间加入容器*/
		p1=new JPanel();
		p2=new JPanel();
		p3=new JPanel();
		p1.add(btn1);
		p1.add(btn2);
		p1.add(btn3);
		p1.add(btn4);
		p2.add(ta1);
		p2.add(ta2);
		add(p1);
		add(p2);
		add(p3);
		setLayout(new FlowLayout());
		/*设置面板背景色*/
		p1.setBackground(Color.red);
		/*各个按钮注册事件监听器*/
		btn1.addActionListener(this);
		btn2.addActionListener(this);
		btn3.addActionListener(this);
		btn4.addActionListener(this);
		setSize(600,360);//设置界面尺寸
		setVisible(true);
	}
	/*重载ActionListener接口的方法,实现各按钮名副其实的功能*/
	public void actionPerformed(ActionEvent e)
	{
		if(e.getSource()==btn1)
		{
			ta1.setText(null);
			ta1.setForeground(Color.blue);
			ta1.setFont(new Font("隶体",Font.BOLD,14));
			int num,i,j,k,l=1;
			for(num=100;num<=999;num++)
			{
				i=num/100;
				j=(num-i*100)/10;
				k=num%10;
				if(num==Math.pow(i,3)+Math.pow(j,3)+Math.pow(k,3))
				{
					ta1.append("第"+l+"个水仙花数是:"+num+"\n");
					l++;
				}
			}
		}
		if(e.getSource()==btn2)
		{
			int num2=(int)(Math.random()*100);//Math.random返回的是0-1之间的一个double型数,*100之后范围扩展为0-100之间的任意数
			ta2.setText(null);
			ta2.setForeground(Color.blue);
			ta2.setFont(new Font("楷体",Font.BOLD,16));
			ta2.append("您roll的点数是:"+num2);
		}
		if(e.getSource()==btn3)
		{
			int k=1;
			ta1.setText(null);
			ta1.setForeground(Color.red);
			ta1.setFont(new Font("楷体",Font.BOLD,16));
			for(int i=1;i<=10000;i++)
			{
				int y=0;
				for(int j=1;j<i;j++)
					if(i%j==0) y+=j;
				if(y==i)
				{
					ta1.append("第"+k+"个完全数是:"+i+"\n");
					k++;
				}
			}
		}
		if(e.getSource()==btn4)
		{
			dispose();
			System.exit(0);
		}
	}
}
心得和总结:

这个程序是仿照实验书上的程序根据自己的意愿改的,经过这次的改动,加深了我对application界面程序的理解,比如添加控件,怎么把控件添加到容器中,初始化控件,和每次都必须设置的窗体的背景色,字体的大小,颜色,显示在那个文本域中等,还有就是几个小程序的代码怎么写,水仙花数怎么求,完全数的求解和随机数的生成,Math.random()很好用,简单方便

不足之处是这个程序无法实现输入,只能单方面的输出,老师今天上课有说可以试着想想怎么输入,但是想了半天还是没有搞明白文本框怎么添加,不敢陷得太深,就只能先实现简单的,然后逐步完善,最起码一点点小的成果还是能让人高兴一会儿的!


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值