资源简介

java编写的数字波形生成器 支持输入两个序列,选择运算符,计算结果并绘制波形

资源截图

代码片段和文件信息

import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import javax.swing.*;

public class WaveGnrt extends Jframe {
// 5个Vector变量实现序列长度可变
Vector arrayA = new Vector();
Vector arrayA1 = new Vector();
Vector arrayB = new Vector();
Vector arrayB1 = new Vector();
Vector arrayF = new Vector();

// 3个index变量记录组合框的选择状态
int indexA indexB indexF;

// 界面所需实例变量
JPanel panel1;
JPanel panel2;
DrawPanel drawPanel;
JScrollPane scrollPanel;
JLabel label1 = new JLabel(“请输入01数字序列:“);
JLabel labelA = new JLabel(“A:“);
JLabel labelB = new JLabel(“B:“);
JLabel labelF = new JLabel(“逻辑函数 F = “);
TextField textFieldA = new TextField();
TextField textFieldB = new TextField();

String function1[] = { “ A “ “ ¬A “ };
JComboBox comboBoxA = new JComboBox(function1);
String function2[] = { “请选择运算“ “∧  (与)“ “∨(或)“ “⊕(异或)“ “↑(与非)“ “↓(或非)“ };
JComboBox comboBoxF = new JComboBox(function2);
String function3[] = { “ B “ “ ¬B “ };
JComboBox comboBoxB = new JComboBox(function3);

JButton calcButton = new JButton(“计算“);
JButton clearButton = new JButton(“清空“);

public static void main(String[] args) {
WaveGnrt waveGrnt = new WaveGnrt();
}

public WaveGnrt() {// 构造函数调整组件大小位置添加组件和事件监听
settitle(“数字波形生成器“);

panel1 = new JPanel();
panel2 = new JPanel();
drawPanel = new DrawPanel();
panel1.setPreferredSize(new Dimension(800 150));
panel1.setLayout(null);
panel2.setLayout(new BorderLayout());
scrollPanel = new JScrollPane(drawPanel);

label1.setBounds(50 10 200 30);
labelA.setBounds(50 50 20 30);
textFieldA.setBounds(70 50 300 30);
labelB.setBounds(400 50 20 30);
textFieldB.setBounds(420 50 300 30);
labelF.setBounds(50 100 80 30);
comboBoxA.setBounds(130 100 60 30);
comboBoxF.setBounds(200 100 100 30);
comboBoxB.setBounds(310 100 60 30);
calcButton.setBounds(450 100 100 30);
clearButton.setBounds(590 100 100 30);

panel1.add(label1);
panel1.add(labelA);
panel1.add(textFieldA);
panel1.add(labelB);
panel1.add(textFieldB);
panel1.add(labelF);
panel1.add(comboBoxA);
panel1.add(comboBoxF);
panel1.add(comboBoxB);
panel1.add(calcButton);
panel1.add(clearButton);

panel2.add(scrollPanel);
add(BorderLayout.NORTH panel1);
add(panel2);

calcButton.addActionListener(new ButtonAction());
clearButton.addActionListener(new ButtonAction());
comboBoxA.addItemListener(new ItemActionA());
comboBoxB.addItemListener(new ItemActionB());
comboBoxF.addItemListener(new ItemActionF());

setSize(800 700);
setLocation(100 20);
setMinimumSize(new Dimension(800 350));
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
setVisible(true);
}// end WaveGnrt()

private class ButtonAction implements ActionListener {// 按钮监听
public void actionPerformed(ActionEvent e) {
if 

评论

共有 条评论