(笔记)MLDN魔乐科技--五子棋

本文介绍五子棋游戏开发所需的基础预备知识,包括JFrame窗口操作、JOptionPane对话框使用、MouseListener鼠标监听及Graphics绘图方法等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MLDN魔乐科技--五子棋制作预备知识

 

 

 

1、JFrame

 

导包:import javax.swing.JFrame;

 

方法:

             

setVisible(): 设置窗体是否显示

 

              setTitle():    设置窗体标题

 

              setSize():    设置窗体大小

 

              setLocation():     设置窗体初始显示的位置

 

              setResizable():    设置窗体是否可以改变大小

 

              setDefaultCloseOperation(JFram.EXIT_ON_CLOSE): 设置窗体关闭方式,关闭窗体时同时结束程序

 

 

2JOptionPane:弹出一些对话框或提示框,不需要用new新建对象,直接使用其静态方法就可以了

 

        导包:import javax.swing.JOptionPane;

 

              方法:

 

              showMessageDialog(mf,"我的信息"):显示一个消息对话框,主要用来提示信息。

 

              showConfirmDialog(mf,"我的确认信息,现在要开始游戏吗?"):

 

              详细:

 

返回值为int类型,“是”返回0,“否”返回1,“取消”返回2。测试方法:用

 

System.out.println打出来

 

              范例:

 

       int result = JOptionPane.showConfirmDialog(mf,"要开始游戏吗?")

       if(result == 0) {

              JOptionPane.showMessageDialog(mf,"是!");

       }

       if(result == 1) {

              JOptionPane.showMessageDialog(mf,"否!");

       }

       if(result == 2) {

              JOptionPane.showMessageDialog(mf,"取消");

       }

      

              showInputDialog("请输入你的姓名:"):显示一个信息输入对话框,作用是用来保存用户输入的信息。

 

              返回值类型:string

 

              范例:

 

string username = JOptionPane.showInputDialog("请输入你的姓名:");

       if(username) {

              System.out.println(uername );

              JOptionPane.showMessageDialog(mf,"输入的姓名为:" + username );

       } else {

              JOptionPane.showMessageDialog(mf,"请重新输入你的姓名!")

       }

 

 

3MouseListener

 

              导包:import java.awt..event.MouseListener;

                               import java.awt..event.MouseEvent;

 

              使用:需要调用JFrameaddMouseListener()方法加入监听。

 

              功能:接收用户通过鼠标所作的操作。可以取得用户点击鼠标的坐标。

 

              方法:

 

mouseClicked(MouseEvent e):监听“鼠标点击事件(在窗体范围内点击)”的。

 

              范例:

             

System.out.println("鼠标点击")

              JOptionPane.showMessageDialog(MyJFrame,"鼠标点击");

 

 

             mouseEntered(MouseEvent e):监听“鼠标进入事件(鼠标进入窗体范围内)”的操作。

             

              范例:

System.out.println("鼠标进入");

              JOptionPane.showMessageDialog(MyJFrame,"鼠标进入");

 

             mouseExited(MouseEvent e):监听“鼠标离开事件(鼠标离开窗体范围)”的操作。

 

              范例:

System.out.println("鼠标离开");

              JOptionPane.showMessageDialog(MyJFrame,"鼠标离开");

 

             mousePressed(MouseEvent e):监听鼠标按下事件的操作。

 

           范例:

 

              public void mousePressed(MouseEvent e) {

                     System.out.printlin("点击位置:X --> " + e.getX());

                     System.out.printlin("点击位置:Y --> " + e.getY());

              }

             

功能:可取的鼠标点击位置的横纵坐标(以程序窗体的左上角为坐标原点)。

             

             mouseReleased(MouseEvent e):监听鼠标抬起事件的操作。

 

          鼠标点击时的执行的顺序是:

             mousePressed --> mouseReleased --> mouseClicked (判断按下与抬起是否在同一位置)

 

 

 

 

4Graphics(相当于一杆画笔):

 

导包:import java.awt.Graphics;

import java.awt.image.BufferedImage;

 

              方法:

 

              drawString():绘制字符串

    

范例:重写paint方法

Public void paint (Graphics g) {

       g.drawString(“五子棋游戏”,20,40)

}

 

              drawOval():画一个空心的圆形:

 

              范例

      

Public void paint (Graphics g) {

       g.drawOval(20,40,40,40)

}

 

 

fillOval()画一个实心的圆形:

 

范例

 

Public void paint (Graphics g) {

       g.fillOval(20,40,40,40)

}

 

 

              drawLine():绘制一条线

 

              范例

 

 

Public void paint (Graphics g) {

       g.drawLine(20,40,80,40)

//前两个数字表示线头坐标,后两个数字表示线尾坐标

}

 

              drawRect():绘制一个空心的矩形

 

              范例:

 

Public void paint (Graphics g) {

       g.drawRect(20,40,80,40)

//前两位左上角坐标,后两位宽度、高度

}

 

              fillRect():绘制一个实心的矩形

 

              范例

 

Public void paint (Graphics g) {

       g.fillRect(20,40,80,40)

//前两位左上角坐标,后两位宽度、高度

}

 

 

              drawImage():绘制一个已经存在的图片,将一个图片直接显示到窗体中。

 

              范例

 

//ImageIO有一个静态的read()方法,通过传入一个File对象,来得到一个图片并返回给一个BufferedImage(也就是一个缓冲图片)。相当于把磁盘上的图片读入到内存里,然后再通过Graphics对象中的g.drawImage()方法把该图片从内存中取出显示到程序的窗体中。

   

//导入要用到的包

import java.awt.Graphics;

import java.awt.image.BufferedImage;

……

   

//tryCatch的时候把BufferedImage image 声明拿出来赋为空值

BufferedImage image = null

   

public void paint (Graphics g) {

           //涉及到IO操作就要tryCatch,因为有可能出现读不到文件的错误(Can’t read input file!)

           t ry {

                  image = ImageIO.read(new File(“图片的绝对路径”));

                  //1个参数表示要将哪个缓冲图片绘制到窗体中,第2,3个参数表示图片放入窗体中的横纵坐标,第4个参数表示要将缓冲图片绘制到哪个窗体中。

           } catch (IOException)  {

                  //TODO Auto-generated catch block

                  e.printStackTrace();

}

           g.drawImage(image,10 ,10 , this);

}

 

 

              setColor():设置画笔的颜色

       

        范例

 

    public void paint (Graphics g) {

              g.setColor(Color.red)

              g.fillRect(80,40,40,20)

       }

 

 

        setFont():设置绘制文字的字体

 

        范例

 

    public void paint (Graphics g) {

              g.setFont(new Font(“黑体”,40 ,40))

              g.drawString(“五子棋游戏”,20,40)

       }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值