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. 75th LeetCode Weekly Contest Smallest Rotation with Highest Score

    Given an array A, we may rotate it by a non-negative integer K so that the array becomes A[K], A[K+1 ...

  2. day15 面向对象 成员

    成员 1. 变量 1.实例变量 格式: 变量.xxx=xx (称为实例变量,也叫属性,字段)给对象用的 2.类变量 类变量:直接写在类中的变量就是类变量,类变量一般用类名来访问 其实就是类中相同的属性 ...

  3. linux 中varnish服务

    一.安装varnish在server1中安装两个包varnish-3.0.5-1.el6.x86_64.rpm varnish-libs-3.0.5-1.el6.x86_64.rpm1.在server ...

  4. codeforces之4.1学习记录

    记录一些之前没见过的代码: #include <bits/stdc++.h> using namespace std; typedef long long ll; #define INF ...

  5. vim的三种模式

    vim的三种模式(最基本的) 命令模式:在该模式下是不能对文件进行编辑的,可以输入快捷键进行一些操作(删除. 复制.移动光标.粘贴)[打开默认                  是进入命令模式] 编辑 ...

  6. angularjs的ng-repeat回调

    首先html代码是这样的: <label>Name des Leiters:</label><select name="leaderID" id=&q ...

  7. indexOf 可用于字符串和数组

    indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. indexOf 与String类似,Array也可以通过indexOf()来搜索一个指定的元素的位置: var arr = ...

  8. inventor安装失败怎样卸载安装inventor 2019?

    AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...

  9. Linux下的NFS快速配置教程与安全策略

    [51CTO专稿]在Linux下实现文件共享有多种方式,NFS就是其中之一.网络文件系统(NFS)协议是由Sun MicroSystem在20世纪80年代为了提供对共享文件的远程访问而设计和实现的.该 ...

  10. HDU 2819 ——Swap——————【最大匹配、利用linker数组、邻接表方式】

     Swap Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status ...