1. Exibição de efeito
Vá diretamente para as renderizações primeiro:
2. Código completo
import java.awt.*;
import javax.swing.*;
public class MultiplicationTable extends JFrame {
public static void main(String[] args) {
// 创建并显示窗口
new MultiplicationTable().setVisible(true);
}
public MultiplicationTable() {
// 设置窗口标题
setTitle("九十九乘法表");
// 设置窗口大小
setSize(1400, 800);
// 设置窗口关闭操作
setDefaultCloseOperation(EXIT_ON_CLOSE);
// 将窗口放置在屏幕中心
setLocationRelativeTo(null);
// 创建滚动面板
JScrollPane scrollPane = new JScrollPane();
// 创建并添加乘法表面板
scrollPane.setViewportView(new TablePanel());
// 添加滚动面板
add(scrollPane);
}
}
class TablePanel extends JPanel {
public TablePanel() {
// 设置布局管理器
setLayout(new GridBagLayout());
// 设置网格约束
GridBagConstraints constraints = new GridBagConstraints();
// 设置间距
constraints.insets = new Insets(5, 5, 5, 5);
// 循环创建标签
for (int i = 1; i < 100; i++) {
for (int j = 1; j <= i; j++) {
// 计算乘积
int product = i * j;
// 创建标签
JLabel label = new JLabel(j + " x " + i + " = " + product);
// 设置字体
label.setFont(new Font("Arial", Font.BOLD, 20));
// 设置网格约束
constraints.gridx = j - 1;
constraints.gridy = i - 1;
// 添加标签
add(label, constraints);
}
}
}
}
3. Ideia de código
Primeiro, criei uma janela (JFrame) usando os componentes Swing do Java. Um painel (JPanel) foi adicionado à janela para armazenar as várias partes da tabuada.
Neste painel, um gerenciador de layout é usado para controlar como a tabela de multiplicação é organizada. E é usado o gerenciador de layout GridBagLayout, que pode controlar o tamanho e a posição de cada célula definindo restrições de grade.
Para exibir cada fórmula da tabuada, também criei um rótulo (JLabel), coloquei o rótulo na célula do painel e defini a fonte e o tamanho da fonte.
Finalmente, um painel de rolagem (JScrollPane) é adicionado para permitir a rolagem quando o conteúdo excede os limites da janela.
本文到此结束,谢谢大家的浏览。