Java -GUI开发九九乘法表
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开发九九乘法表的更多相关文章
- Java Web之九九乘法表
NineTabs.jsp 1 <%@ page language="java" import="java.util.*" contentType=&quo ...
- Java练习 SDUT-2561_九九乘法表
九九乘法表 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 九九乘法表是数学学习的基础,今天我们就来看看乘法表的相关问题 ...
- java打印一下九九乘法表
public class Multiplication { public static void main(String[] args) { printTable(); } // 打印九九乘法表 pu ...
- Unity3D题目,Unity中利用GUI输出九九乘法表
网上看到的这题,下面贴出源代码 using UnityEngine;using System.Collections; public class c99 : MonoBehaviour//C#脚本名: ...
- 用java代码打印九九乘法表
package com.wf; public class cal { public static void main(String[] args) { for(int i=1;i<10;i++) ...
- java例题_16 九九乘法表
1 /*题目:输出 9*9 口诀. 2 程序分析:分行与列考虑,共 9 行 9 列,i 控制行,j 控制列. 3 */ 4 5 /*分析 6 * 用两侧for循环,外层循环还要控制换行 7 * 换行时 ...
- for循环打印九九乘法表
学习目标: 熟练掌握 for 循环的使用 例题: 需求:打印九九乘法表 代码如下: // 九九乘法表 // row 为行,col为列 for(int row = 1; row < 10; row ...
- JSP基础语法---九九乘法表-java jsp
<%@ page language="java" import="java.util.*" contentType="text/html; ch ...
- Java EE 在网页输出九九乘法表、三角形、菱形
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
随机推荐
- C语言中变量的存储类型
在C语言中,对变量的存储类型说明有以下四种: auto 自动变量register 寄存器变量extern 外部变量static 静态变量 自动变量和寄存器变量属于动态存储方式,外部变量和静态变 ...
- 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 ...
- dataTable调用接口渲染数据,没有数据,报错
当没有数据的时候,报错: 解决方法: 在后台那边处理一下,当没有数据的时候,令 data : ' ' 或者 data : [ ] 前端代码: var loading = layer.load(1, { ...
- 如何用css让一个容器水平垂直居中
方法一: 以前设置里面的绿div总是会使用{position:absolute;left:50%;top:50%;margin-left:-div宽度的一半;margin-top:-div高度的一半} ...
- jQuery中animate()方法以及$('body').animate({"scrollTop":top})不被Firefox支持问题的解决
$("body").animate({"scrollTop":top}): 只被chrome支持,而不被Firefox支持 $("html" ...
- Smarty保留变量信息
对php里边的超级全局数组变量信息的使用 例如:$_GET.$_POST.$_SESSION.$_COOKIE.$_REQUEST.$_SERVER.$_ENV.$GLOBALS.$_FILES.常量 ...
- 用NaviCat创建存储过程批量添加测试数据
打开navicat连接上数据库,然后打开左上角函数,新建一个函数. BEGIN DECLARE i int; --声明变量 DECLARE groupid int; set i=LAST_INSERT ...
- java后台获取服务器相对路径,获取当前时间yyyyMMddHHmmssSSS
SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmssSSS"); Date date = new Date( ...
- xshell如何传输文件-yum
1.安装 sudo yum install lrzsz -y 2.检查是否安装成功 #rpm -qa |grep lrzsz 出现如下,表示安装成功 3.上传文件的执行命令: #rz 就会打开本地选 ...
- python单元测试框架-unittest(四)之用例综合框架管理
简述为何如要框架? 前面测试用例与执行都是写在一个文件,当用例数量不断增加的时候,用例的执行与管理变得非常麻烦,因此需要对用例根据具体的功能模块来使用单独的模块来管理.就像一所学校要根据不同年级进行分 ...