请java高手帮忙不程序,只要帮我在我的程序中加个改变画笔粗细和颜色的代码就行,情况紧急
importjava.awt.*;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener...
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionAdapter;
import java.awt.event.MouseMotionListener;
import java.awt.geom.GeneralPath;
import java.awt.geom.Line2D;
import java.io.Serializable;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class PaintPen extends JFrame
{
GeneralPath gp=new GeneralPath();//GeneralPath对象实例
Point p1;
//构造函数
public PaintPen(){
super("画笔");//给程序命名
enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK);//允许事件
setSize(500,500);//设置窗口尺寸
setVisible(true);//设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口时退出程序
}
/**
* @param args
*/
public void paint(Graphics g){
Graphics2D g2d=(Graphics2D)g;//获取图形环境
g2d.draw(gp);//绘制路径
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new PaintPen();
}
protected void processMouseEvent(MouseEvent e){//鼠标按下时事件处理
if(e.getID()==MouseEvent.MOUSE_PRESSED)
{
p1=e.getPoint();//得到当前鼠标点
gp=new GeneralPath();//重新实例话GeneralPath对象
gp.moveTo(p1.x, p1.y );//设置路径点
}
}
protected void processMouseMotionEvent(MouseEvent e){//鼠标拖动时事件处理
if(e.getID()==MouseEvent.MOUSE_DRAGGED)
{
p1=e.getPoint();//得到当前鼠标点
gp.lineTo(p1.x, p1.y);//设置路径
gp.moveTo(p1.x, p1.y);
repaint();//重新绘制组件
}
}
}
现在请高手帮我加一个橡皮就行了,大神,帮帮忙啊 展开
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionAdapter;
import java.awt.event.MouseMotionListener;
import java.awt.geom.GeneralPath;
import java.awt.geom.Line2D;
import java.io.Serializable;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class PaintPen extends JFrame
{
GeneralPath gp=new GeneralPath();//GeneralPath对象实例
Point p1;
//构造函数
public PaintPen(){
super("画笔");//给程序命名
enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK);//允许事件
setSize(500,500);//设置窗口尺寸
setVisible(true);//设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口时退出程序
}
/**
* @param args
*/
public void paint(Graphics g){
Graphics2D g2d=(Graphics2D)g;//获取图形环境
g2d.draw(gp);//绘制路径
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new PaintPen();
}
protected void processMouseEvent(MouseEvent e){//鼠标按下时事件处理
if(e.getID()==MouseEvent.MOUSE_PRESSED)
{
p1=e.getPoint();//得到当前鼠标点
gp=new GeneralPath();//重新实例话GeneralPath对象
gp.moveTo(p1.x, p1.y );//设置路径点
}
}
protected void processMouseMotionEvent(MouseEvent e){//鼠标拖动时事件处理
if(e.getID()==MouseEvent.MOUSE_DRAGGED)
{
p1=e.getPoint();//得到当前鼠标点
gp.lineTo(p1.x, p1.y);//设置路径
gp.moveTo(p1.x, p1.y);
repaint();//重新绘制组件
}
}
}
现在请高手帮我加一个橡皮就行了,大神,帮帮忙啊 展开
1个回答
展开全部
public void paint(Graphics g) {
Stroke stroke=new BasicStroke(10.0f);//设置线宽为10.0
Graphics2D g2d = (Graphics2D) g;// 获取图形环境
g2d.setStroke(stroke);
g2d.draw(gp);// 绘制路清岩径
}
改成这样的。快。好了,。
颜色型猛的,你自己练练改。道理相同。
加入颜色的是这样的。
public void paint(Graphics g) {
Stroke stroke=new BasicStroke(10.0f);//设置线宽为3.0
Color c= new Color(100, 10, 10) ;//设置颜色R-G-B值 (褐色)
Graphics2D g2d = (Graphics2D) g;// 获取图形环境
g2d.setColor(c);
g2d.setStroke(stroke);
g2d.draw(gp);// 绘答租御制路径
}
你就替换paint方法就可以了。别的不用改
Stroke stroke=new BasicStroke(10.0f);//设置线宽为10.0
Graphics2D g2d = (Graphics2D) g;// 获取图形环境
g2d.setStroke(stroke);
g2d.draw(gp);// 绘制路清岩径
}
改成这样的。快。好了,。
颜色型猛的,你自己练练改。道理相同。
加入颜色的是这样的。
public void paint(Graphics g) {
Stroke stroke=new BasicStroke(10.0f);//设置线宽为3.0
Color c= new Color(100, 10, 10) ;//设置颜色R-G-B值 (褐色)
Graphics2D g2d = (Graphics2D) g;// 获取图形环境
g2d.setColor(c);
g2d.setStroke(stroke);
g2d.draw(gp);// 绘答租御制路径
}
你就替换paint方法就可以了。别的不用改
更多追问追答
追问
可以帮我设计一个调色板,用调色板改颜色吗,粗细也是要这样的
追答
这个我真没有时间。目前,因为项目不忙看到你发的这个,我才改的。
调色版,可以帮你研究一下。有空的时候。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询