java简易绘图软件代码_java语言的科学与艺术-编程练习---10.5(简单的绘图程序)...

这个博客介绍了如何使用Java编程创建一个简单的图形界面应用程序,该程序能够绘制矩形、椭圆和直线。通过添加不同按钮来选择绘制的图形类型,并通过鼠标点击和拖拽进行绘制。博客详细讲解了界面初始化、按钮事件处理以及鼠标操作事件的实现,包括图形的位置调整和拖动功能。
摘要由CSDN通过智能技术生成

创建一个简单的绘图程序,可以绘制矩形,椭圆和直线。

1.先生成程序界面:

创一个添加显示图片按钮的方法:

1 privateJButton addButton(String str){2 ImageIcon icon = new ImageIcon(str);//按钮图标

3 JButton button = newJButton(icon);4 button.setContentAreaFilled(false);//按钮透明;

5 returnbutton;6 }

初始化界面:

1 public voidinit(){2 setLayout(new BorderLayout(5,1)); //设置布局;

3 JButton rectFilled = addButton("rectfilled.gif");4 rectFilled.setActionCommand("rectFilled");5 JButton rect = addButton("rect.gif");6 rect.setActionCommand("rect");7 JButton ovalFilled = addButton("ovalfilled.gif");8 ovalFilled.setActionCommand("ovalFilled");9 JButton oval = addButton("oval.gif");10 oval.setActionCommand("oval");11 JButton line = addButton("line.gif");12 line.setActionCommand("line");13 add(rectFilled, BorderLayout.WEST);14 add(rect, BorderLayout.WEST);15 add(ovalFilled, BorderLayout.WEST);16 add(oval, BorderLayout.WEST);17 add(line, BorderLayout.WEST);18 }

2.创建按钮事件

点击按钮分别执行的事件;为了点击按钮画出相应的图形,我设置了5个boolean变量;

private boolean isDrawRectFilled = false, isDrawRect = false, isDrawOvalFilled = false, isDrawOval = false, isDrawLine = false;

按钮事件代码:

1 public voidactionPerformed(ActionEvent e){2 String cmd =e.getActionCommand();3 if(cmd.equals("rectFilled")){4 isDrawRectFilled = true;5 isDrawRect = false;6 isDrawOval &#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的 Python 绘图程序代码,使用了 tkinter 库: ``` import tkinter as tk class PaintApp: def __init__(self, master): self.master = master self.master.title("Python 绘图程序") self.master.geometry("800x600") # 创建画布 self.canvas = tk.Canvas(self.master, bg="white", width=600, height=400) self.canvas.pack(side=tk.LEFT, fill=tk.BOTH, expand=True) # 创建工具栏 self.toolbar = tk.Frame(self.master) self.toolbar.pack(side=tk.RIGHT, fill=tk.Y) self.pen_btn = tk.Button(self.toolbar, text="画笔") self.pen_btn.pack(side=tk.TOP) self.line_btn = tk.Button(self.toolbar, text="直线") self.line_btn.pack(side=tk.TOP) self.rect_btn = tk.Button(self.toolbar, text="矩形") self.rect_btn.pack(side=tk.TOP) self.oval_btn = tk.Button(self.toolbar, text="椭圆") self.oval_btn.pack(side=tk.TOP) self.clear_btn = tk.Button(self.toolbar, text="清除") self.clear_btn.pack(side=tk.TOP) # 设置默认工具 self.current_tool = "pen" # 绑定事件 self.canvas.bind("<B1-Motion>", self.draw) self.pen_btn.config(command=lambda: self.set_tool("pen")) self.line_btn.config(command=lambda: self.set_tool("line")) self.rect_btn.config(command=lambda: self.set_tool("rect")) self.oval_btn.config(command=lambda: self.set_tool("oval")) self.clear_btn.config(command=self.clear) def draw(self, event): if self.current_tool == "pen": self.canvas.create_oval(event.x, event.y, event.x+5, event.y+5, fill="black") elif self.current_tool == "line": self.canvas.create_line(event.x, event.y, event.x+10, event.y+10, fill="black") elif self.current_tool == "rect": self.canvas.create_rectangle(event.x, event.y, event.x+20, event.y+20, fill="black") elif self.current_tool == "oval": self.canvas.create_oval(event.x, event.y, event.x+30, event.y+15, fill="black") def set_tool(self, tool): self.current_tool = tool def clear(self): self.canvas.delete("all") if __name__ == "__main__": root = tk.Tk() app = PaintApp(root) root.mainloop() ``` 这个程序创建了一个窗口,左侧是画布,右侧是工具栏,可以选择不同的工具进行绘画,支持画笔、直线、矩形、椭圆等基本绘图功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值