Java GUI开发九九乘法表

(1)实现目标:

利用java自带的awt包,基础控件开发一个九九乘法表,点击可以显示对应的乘法口诀。

(2)控件选择:

点击——Button

显示——TextField

(3)界面设计:总体设计布局

(4)主窗体编写

将程序在屏幕中央区显示

  

 /*窗口居中显示*/
int Win_width=fr.getWidth();
int Win_Height=fr.getHeight();
Toolkit kit = Toolkit.getDefaultToolkit(); // 定义工具包
Dimension screenSize = kit.getScreenSize(); // 获取屏幕的尺寸
int screenWidth = screenSize.width; // 获取屏幕的宽
int screenHeight = screenSize.height; // 获取屏幕的高
fr.setLocation(screenWidth / 2 - Win_width / 2, screenHeight / 2 - Win_Height / 2);

编写关闭程序

              /*退出程序*/
fr.addWindowListener(new java.awt.event.WindowAdapter()
{
public void windowClosing(java.awt.event.WindowEvent e)
{
System.exit(0);
}
});

 (5)FrameInOut窗体内容和主要算法

         FrameInOut()
{
super("99乘法表");//程序名称
tx =new TextField(20);
tx.setEditable(false);
tx.setBackground(Color.orange);
tx.setFont(f);
tx.setBounds(490, 100, 230, 60);
add(tx); int i=0;
int j=0;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
{
Button btn =new Button(String.valueOf(j)+" × "+String.valueOf(i)+" = "+String.valueOf(i*j));
btn.setBounds((j-1)*80+10+(j-1)*10, 40+(i-1)*40, 80, 25);
//btn.setBackground(Color.cyan);
add(btn);
btn.addActionListener(this);
} } setLayout(null);
setSize(820,410);
setVisible(true);
setBackground(Color.orange);
} public void actionPerformed(ActionEvent e)
{
String s=e.getActionCommand();
tx.setText(s);
}

(6)全部代码

 package p_3142;
import java.awt.*;
import java.awt.event.*;
import java.io.IOException; public class p3142 { public static void main(String args[])
{ Frame fr=new FrameInOut();
/*窗口居中显示*/
int Win_width=fr.getWidth();
int Win_Height=fr.getHeight();
Toolkit kit = Toolkit.getDefaultToolkit(); // 定义工具包
Dimension screenSize = kit.getScreenSize(); // 获取屏幕的尺寸
int screenWidth = screenSize.width; // 获取屏幕的宽
int screenHeight = screenSize.height; // 获取屏幕的高
fr.setLocation(screenWidth / 2 - Win_width / 2, screenHeight / 2 - Win_Height / 2); /*退出程序*/
fr.addWindowListener(new java.awt.event.WindowAdapter()
{
public void windowClosing(java.awt.event.WindowEvent e)
{
System.exit(0);
}
}); }
} class FrameInOut extends Frame implements ActionListener
{
TextField tx;
Label lab;
Font f=new Font("宋体", Font.BOLD, 40); FrameInOut()
{
super("99乘法表");//程序名称
tx =new TextField(20);
tx.setEditable(false);
tx.setBackground(Color.orange);
tx.setFont(f);
tx.setBounds(490, 100, 230, 60);
add(tx); int i=0;
int j=0;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
{
Button btn =new Button(String.valueOf(j)+" × "+String.valueOf(i)+" = "+String.valueOf(i*j));
btn.setBounds((j-1)*80+10+(j-1)*10, 40+(i-1)*40, 80, 25);
//btn.setBackground(Color.cyan);
add(btn);
btn.addActionListener(this);
} } setLayout(null);
setSize(820,410);
setVisible(true);
setBackground(Color.orange);
} public void actionPerformed(ActionEvent e)
{
String s=e.getActionCommand();
tx.setText(s);
} }

Java -GUI开发九九乘法表的更多相关文章

  1. Java Web之九九乘法表

    NineTabs.jsp 1 <%@ page language="java" import="java.util.*" contentType=&quo ...

  2. Java练习 SDUT-2561_九九乘法表

    九九乘法表 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 九九乘法表是数学学习的基础,今天我们就来看看乘法表的相关问题 ...

  3. java打印一下九九乘法表

    public class Multiplication { public static void main(String[] args) { printTable(); } // 打印九九乘法表 pu ...

  4. Unity3D题目,Unity中利用GUI输出九九乘法表

    网上看到的这题,下面贴出源代码 using UnityEngine;using System.Collections; public class c99 : MonoBehaviour//C#脚本名: ...

  5. 用java代码打印九九乘法表

    package com.wf; public class cal { public static void main(String[] args) { for(int i=1;i<10;i++) ...

  6. java例题_16 九九乘法表

    1 /*题目:输出 9*9 口诀. 2 程序分析:分行与列考虑,共 9 行 9 列,i 控制行,j 控制列. 3 */ 4 5 /*分析 6 * 用两侧for循环,外层循环还要控制换行 7 * 换行时 ...

  7. for循环打印九九乘法表

    学习目标: 熟练掌握 for 循环的使用 例题: 需求:打印九九乘法表 代码如下: // 九九乘法表 // row 为行,col为列 for(int row = 1; row < 10; row ...

  8. JSP基础语法---九九乘法表-java jsp

    <%@ page language="java" import="java.util.*" contentType="text/html; ch ...

  9. Java EE 在网页输出九九乘法表、三角形、菱形

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

随机推荐

  1. C语言中变量的存储类型

    在C语言中,对变量的存储类型说明有以下四种: auto 自动变量register   寄存器变量extern 外部变量static   静态变量 自动变量和寄存器变量属于动态存储方式,外部变量和静态变 ...

  2. 75th LeetCode Weekly Contest All Paths From Source to Target

    Given a directed, acyclic graph of N nodes.  Find all possible paths from node 0 to node N-1, and re ...

  3. dataTable调用接口渲染数据,没有数据,报错

    当没有数据的时候,报错: 解决方法: 在后台那边处理一下,当没有数据的时候,令 data : ' ' 或者 data : [ ] 前端代码: var loading = layer.load(1, { ...

  4. 如何用css让一个容器水平垂直居中

    方法一: 以前设置里面的绿div总是会使用{position:absolute;left:50%;top:50%;margin-left:-div宽度的一半;margin-top:-div高度的一半} ...

  5. jQuery中animate()方法以及$('body').animate({"scrollTop":top})不被Firefox支持问题的解决

    $("body").animate({"scrollTop":top}): 只被chrome支持,而不被Firefox支持 $("html" ...

  6. Smarty保留变量信息

    对php里边的超级全局数组变量信息的使用 例如:$_GET.$_POST.$_SESSION.$_COOKIE.$_REQUEST.$_SERVER.$_ENV.$GLOBALS.$_FILES.常量 ...

  7. 用NaviCat创建存储过程批量添加测试数据

    打开navicat连接上数据库,然后打开左上角函数,新建一个函数. BEGIN DECLARE i int; --声明变量 DECLARE groupid int; set i=LAST_INSERT ...

  8. java后台获取服务器相对路径,获取当前时间yyyyMMddHHmmssSSS

    SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmssSSS"); Date date = new Date( ...

  9. xshell如何传输文件-yum

    1.安装 sudo yum install  lrzsz -y 2.检查是否安装成功 #rpm -qa |grep lrzsz 出现如下,表示安装成功 3.上传文件的执行命令: #rz 就会打开本地选 ...

  10. python单元测试框架-unittest(四)之用例综合框架管理

    简述为何如要框架? 前面测试用例与执行都是写在一个文件,当用例数量不断增加的时候,用例的执行与管理变得非常麻烦,因此需要对用例根据具体的功能模块来使用单独的模块来管理.就像一所学校要根据不同年级进行分 ...