编写一个windows应用程序,要求在窗口的用户区中绘制一个圆 ,当单击左键时,该圆放大;单击右键时,该圆缩小;按下ctrl键时的同时鼠标移动,则该圆会随鼠标移动而移动

这篇博客介绍了一个Windows应用程序的实现,该程序在窗口中绘制一个圆,并通过用户交互来改变圆的大小和位置。点击左键时圆会放大,点击右键则缩小,按住Ctrl键并移动鼠标,圆将跟随鼠标移动。
摘要由CSDN通过智能技术生成

编写一个windows应用程序,要求在窗口的用户区中绘制一个圆 ,当单击左键时,该圆放大;单击右键时,该圆缩小;按下ctrl键时的同时鼠标移动,则该圆会随鼠标移动而移动。


1.建立一个SDI,名字为MFCexp7_9


2.在文档类中添加一个成员

    CRect m_Ell;


3.在文档类的构造函数中对成员初始化

CMy7_9Doc::CMy7_9Doc() : m_Ell( 100 , 100 , 200 , 200 )
{
// TODO: add one-time construction code here
}


4.在View类添加OnLButtonDown函数里添加:

您所描述的功能可以通过编程语言的图形库来实现,例如在Python可以使用Tkinter库或者Pygame库。以下是使用Python的Tkinter库实现您描述功能的一个基本示例: 1. 导入Tkinter模块。 2. 创建一个窗口,用于绘制图像。 3. 使用鼠标事件处理函数,监听鼠标左键和右的点击事件。 4. 当左键被点击,记录坐标并绘制点以及显示坐标。 5. 当右被点击,根据之前记录的坐标点绘制多边形。 以下是一个简单的实现代码: ```python import tkinter as tk def draw_point(event): x, y = event.x, event.y canvas.create_oval(x-2, y-2, x+2, y+2, fill='black') canvas.create_text(x, y, text=f"({x}, {y})", anchor='nw') def draw_polygon(event): global points x, y = event.x, event.y points.append((x, y)) canvas.delete("polygon") points = points[-1:] + points[:-1] # 将最后一个点移到最前面 canvas.create_polygon(points, fill="red", outline="black", tags="polygon") root = tk.Tk() root.title("绘制点和多边形") canvas = tk.Canvas(root, width=400, height=400) canvas.pack() points = [] canvas.bind("<Button-1>", draw_point) # 绑定左键事件 canvas.bind("<Button-3>", draw_polygon) # 绑定右事件 root.mainloop() ``` 在上述代码,`draw_point` 函数会在左键点击绘制一个点,并显示其坐标。`draw_polygon` 函数会在右点击使用记录的点来绘制多边形。`points` 列表用于存储鼠标左键点击的坐标点。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值