#include "graphics.h"
#include "extgraph.h"
#include "genlib.h"
#include "simpio.h"
#include "conio.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include <windows.h>
#include <olectl.h>
#include <stdio.h>
#include <mmsystem.h>
#include <wingdi.h>
#include <ole2.h>
#include <ocidl.h>
#include <winuser.h>
int cx,cy;
bool inBox(double x0, double y0)
{
return (x0 > 0 && x0 < cx && y0 > 0 && y0 < cy);
}
void MouseEventProcess(int x, int y, int button, int event)
{
static double lx=0.0, ly=0.0;
double mx, my;
mx = ScaleXInches(x);/*pixels --> inches*/
my = ScaleYInches(y);/*pixels --> inches*/
static bool isDraw = FALSE;
switch (event) {
case BUTTON_DOWN:
if (button == LEFT_BUTTON){
isDraw = TRUE;
}
break;
case BUTTON_DOUBLECLICK:
break;
case BUTTON_UP:
if (button == LEFT_BUTTON) isDraw = FALSE;
break;
case MOUSEMOVE:
if (isDraw) {
DrawLine(mx-lx,my-ly);
MovePen(mx,my);
}
break;
}
lx=mx;
ly=my;
}
void Main()
{
InitGraphics();
cx = GetWindowWidth();
cy = GetWindowHeight();
registerMouseEvent(MouseEventProcess);
SetPenSize(1);
}[C大程]图形程序设计_3 随笔画
最新推荐文章于 2021-05-25 09:16:25 发布
本文介绍了一个使用多种图形库实现的绘图程序,该程序能够通过鼠标事件进行绘图操作。具体包括处理鼠标按下、双击、抬起及移动等事件,并通过坐标转换将像素单位转换为英寸单位。
868

被折叠的 条评论
为什么被折叠?



