Multiplication Table

package com.demo;


import java.awt.BorderLayout;
import java.awt.Graphics;


import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;


public class Demo extends JFrame {


public Demo() {
this.setLayout(new BorderLayout());
JPanel titlePanel = new JPanel();
JLabel titleLable = new JLabel("Multiplication Table");
titlePanel.add(titleLable);
MultiplicationPanel tabel = new MultiplicationPanel();
this.add(titlePanel,BorderLayout.NORTH);
this.add(tabel, BorderLayout.CENTER);

}


public static void main(String[] args) {
Demo frame = new Demo();
frame.setSize(400, 400);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
class MultiplicationPanel extends JPanel{
protected void paintComponent(Graphics g){
super.paintComponent(g); 
for (int i = 0; i < 9; i++) {
for (int j = 0; j < 9; j++) {
g.drawString((i+1)*(j+1)+"", (i+2) * this.getWidth()/11, (j+2) * this.getHeight()/11);

}
}
for (int i = 0; i < 9; i++) {
g.drawString((i+1)+"", (i+2) * this.getWidth()/11,(1) * this.getHeight()/11);
}
g.drawLine(2 * this.getWidth()/11 -10, this.getHeight()/11+this.getHeight()/22 -5,
this.getWidth()-10,  this.getHeight()/11+this.getHeight()/22 -5);
for (int j = 0; j < 9; j++) {
g.drawString((j+1)+"", 1 * this.getWidth()/11, (j+2) * this.getHeight()/11);
}
g.drawLine(2 * this.getWidth()/11 -10, this.getHeight()/11+this.getHeight()/22 -5, 
2 * this.getWidth()/11 -10, this.getHeight()-15);
g.drawLine(2 * this.getWidth()/11 -10, this.getHeight()-15,this.getWidth()-10, this.getHeight()-15 );
g.drawLine(this.getWidth()-10, this.getHeight()/11+this.getHeight()/22 -5,
this.getWidth()-10, this.getHeight()-15);
}
}

你可能感兴趣的:(Multiplication Table)