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

📄 toetest.java

📁 翁剀JAVA语言那门课程的教案 很多人都看多他的视频教程可惜没有ppt的教案
💻 JAVA
字号:
//: ToeTest.java
// Demonstration of dialog boxes
// and creating your own components
import java.awt.*;

class ToeButton extends Canvas {
	int state = ToeDialog.BLANK;
	ToeDialog parent;

	ToeButton(ToeDialog parent) {
		this.parent = parent;
	}
	
	public void paint(Graphics g) {
		int x1 = 0;
		int y1 = 0;
		int x2 = size().width - 1;
		int y2 = size().height - 1;
		g.drawRect(x1, y1, x2, y2);
		x1 = x2/4;
		y1 = y2/4;
		int wide = x2/2;
		int high = y2/2;
		if(state == ToeDialog.XX) {
			g.drawLine(x1, y1, x1 + wide, y1 + high);
			g.drawLine(x1, y1 + high, x1 + wide, y1);
		}
		if(state == ToeDialog.OO) {
			g.drawOval(x1, y1, x1+wide/2, y1+high/2);
		}
	}

	public boolean
	mouseDown(Event evt, int x, int y) {
		if(state == ToeDialog.BLANK) {
			state = parent.turn;
			parent.turn= (parent.turn == ToeDialog.XX ?
			ToeDialog.OO : ToeDialog.XX);
		}
		else
			state = (state == ToeDialog.XX ?
				ToeDialog.OO : ToeDialog.XX);
		repaint();
		return true;
	}
}

class ToeDialog extends Dialog {
	// w = number of cells wide
	// h = number of cells high
	static final int BLANK = 0;
	static final int XX = 1;
	static final int OO = 2;
	int turn = XX; // Start with x's turn
	
	public ToeDialog(Frame parent, int w, int h) {
		super(parent, "The game itself", false);
		setLayout(new GridLayout(w, h));
		for(int i = 0; i < w * h; i++)
		add(new ToeButton(this));
		resize(w * 50, h * 50);
	}

	public boolean handleEvent(Event evt) {
		if(evt.id == Event.WINDOW_DESTROY)
			dispose();
		else
			return super.handleEvent(evt);
		return true;
	}
}

public class ToeTest extends Frame {
	TextField rows = new TextField("3");
	TextField cols = new TextField("3");
	
	public ToeTest() {
		setTitle("Toe Test");
		Panel p = new Panel();
		p.setLayout(new GridLayout(2,2));
		p.add(new Label("Rows", Label.CENTER));
		p.add(rows);
		p.add(new Label("Columns", Label.CENTER));
		p.add(cols);
		add("North", p);
		add("South", new Button("go"));
	}

	public boolean handleEvent(Event evt) {
		if(evt.id == Event.WINDOW_DESTROY)
			System.exit(0);
		else
			return super.handleEvent(evt);
		return true;
	}
	public boolean action(Event evt, Object arg) {
		if(arg.equals("go")) {
			Dialog d = new ToeDialog(
				this,
				Integer.parseInt(rows.getText()),
				Integer.parseInt(cols.getText()));
			d.show();
		}
		else
			return super.action(evt, arg);
		return true;
	}
	
	public static void main(String[] args) {
		Frame f = new ToeTest();
		f.resize(200,100);
		f.show();
	}
} ///:~

⌨️ 快捷键说明

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