JAVA做一个可以鼠标绘图、键盘写字的画板

工具:eclipse

语言:java

成果:

源代码:

import java.awt.Color;

import java.awt.Frame;

import java.awt.Graphics;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.awt.event.MouseListener;

import java.awt.event.MouseMotionAdapter;

 

import javax.swing.JFrame;

import javax.swing.JPanel;

 

class HuiTu{

    JFrame mFrame=new JFrame("画板");

    JPanel mPanel=new JPanel();

    int LastX=0;

    int LastY=0;

public HuiTu() {

        // TODO Auto-generated constructor stub

    mFrame.setSize(800, 800);

    mFrame.setVisible(true);

    mFrame.setForeground(Color.BLUE);

    mFrame.add(mPanel);

    mPanel.setBackground(Color.WHITE);

      

      

    mFrame.addMouseListener(new MouseAdapter() {

        public void mousePress(MouseEvent e) {

            LastX = e.getX();

            LastY = e.getY();

                

            }

        });

    mFrame.addMouseMotionListener(new MouseMotionAdapter() {

        public void mouseDragged(MouseEvent e) {

            int x=e.getX();

            int y=e.getY();

            Graphics g =mFrame.getGraphics();

            g.drawLine(LastX, LastY, x, y);

            LastX=e.getX();

            LastY=e.getY();

                

            }

        });

    mFrame.addKeyListener(new KeyAdapter() {

        public void keyTyped(KeyEvent e) {

            String string=String.valueOf(e.getKeyChar());

            mFrame.getGraphics().drawString(string, LastX, LastY);

            LastX += 30;

          

                

            }

        });

    }

 

}

public class C5T8 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

new HuiTu();

    }

 

}

转载于:https://www.cnblogs.com/huchangqing/p/8996410.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值