⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main_window.java

📁 操作系统-动态分区分配算法 操作系统-动态分区分配算法
💻 JAVA
字号:
import java.awt.FlowLayout;
import java.awt.event.*;
import javax.swing.*;

/*
 * 存储管理——动态分区分配算法的模拟:
 * 要求设计主界面以灵活选择某算法,以下算法都要实现:
 * 1、	首次适应算法
 * 2、	循环首次适应算法
 * 3、	最佳适应算法
 * 4、	最坏适应算法
 * 5、	快速适应算法
 * 
 */

//这里用于选择执行分配算法界面或者回收算法界面
public class Main_Window extends JFrame implements ActionListener, ItemListener {
	// jCB为选择执行内容的下拉菜单
	JComboBox jCB = new JComboBox();
	JPanel p1 = new JPanel();
	JLabel l = new JLabel();
	ImageIcon pp1 = new ImageIcon("b.gif");
	ImageIcon pp2 = new ImageIcon("Recycle2.jpg");
	JButton b = new JButton("GO");
	int select = 0;

	public Main_Window() {
		JPanel p1 = new JPanel();
		p1.setLayout(new FlowLayout());
		// 将ImageIcon显示在下拉菜单前
		l.setIcon(pp1);
		p1.add(l);
		add(p1);

		JPanel p2 = new JPanel();
		jCB.addItem("内存分配算法");
		jCB.addItem("内存回收算法");
		jCB.addItemListener(this);
		jCB.setToolTipText("下拉选择执行内容");
		p2.add(jCB);
		p2.add(b);
		b.addActionListener(this);
		b.setToolTipText("进入“内存分配算法”界面");
		add(p2);

		// 将这个JFrame窗口的布局设为FlowLayout
		setLayout(new FlowLayout());
		// 设置窗口大小,
		setSize(300, 120);
		// 大小不可更改
		setResizable(false);
		// 窗口居中
		setLocationRelativeTo(null);
		// 显示
		setVisible(true);
		// 设置窗口右上角的关闭按钮事件为结束程序
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		// 设置标题栏为我们组的课题信息
		setTitle("课题八:存储管理——动态分区分配算法的模拟");
	}

	public static void main(String[] args) {
		Main_Window m = new Main_Window();
	}

	public void actionPerformed(ActionEvent arg0) {
		// TODO 自动生成方法存根
		if (arg0.getSource() == b && jCB.getSelectedIndex() == 0) {
			// 按下按钮时假如下拉菜单选中的是内存分配算法,则新建SuanFaMain()
			new SuanFaMain();
		} else {
			if (arg0.getSource() == b && jCB.getSelectedIndex() == 1) {
				// 按下按钮时假如下拉菜单选中的是内存回收算法,则新建Recycle()
				new Recycle();
			}
		}
	}

	public void itemStateChanged(ItemEvent arg0) {// 根据下拉菜单的内容显示不同的图片和提示信息
		// TODO 自动生成方法存根
		if (jCB.getSelectedIndex() == 1) {
			l.setIcon(pp2);
			b.setToolTipText("进入“内存回收算法”界面");
		} else {
			l.setIcon(pp1);
			b.setToolTipText("进入“内存分配算法”界面");
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -