MFC画标尺】的更多相关文章

void CJjjView::OnPaint() { CPaintDC dc(this); //屏幕初始化 dc.SetMapMode(MM_LOENGLISH);//0.01in ;1英寸映射 dc.SetTextAlign(TA_CENTER|TA_BOTTOM); dc.SetBkMode(TRANSPARENT); //画尺子主题 CBrush brush(RGB(,,)); CBrush* pOldBrush=dc.SelectObject(&brush); dc.Rectangle(…
本文仅用于学习交流,商业用途请支持正版!转载请注明:http://www.cnblogs.com/mxbs/p/6216464.html MFC画线功能要点有二:其一,鼠标按下时记录初始位置为线的起始端点,其二,利用不同的方法实现画线.下面着重学习总结画线功能实现方法. 在OnLButtonDown函数中记录起始端点,CPoint m_ptOrigin = point; 在OnLButtonUp函数中实现画线.方法如下: 画线方法一:利用SDK全局函数实现视图窗口画线功能 //获取设备描述表 H…
>_<:这是个简单的MFC程序,有利于了解MFC的框架结构 >_<:Ruler.h #include<afxwin.h> class CMyApp:public CWinApp { public: virtual BOOL InitInstance(); }; class CMainWindow:public CFrameWnd { public: CMainWindow(); protected: afx_msg void OnPaint(); DECLARE_MES…
新建单个文档的MFC应用程序,类视图——View项的属性——消息,WM_PAINT,创建OnPaint()函数 void CMFCApplication27View::OnPaint() { CPaintDC dc(this); // device context for painting // TODO: 在此处添加消息处理程序代码 CRect rect; this->GetClientRect(&rect);//获取客户区大小 CFont font;//用来设置大小.样式,颜色用dc.S…
源博客:http://www.codeproject.com/Articles/9350/2D-Animated-Charts 源代码:http://download.csdn.net/detail/nuptboyzhb/4202051 简介:CGraphObject是由CWnd类派生出来,因此,CGraphObject类是一个窗口类:即,每个图表都是一个窗口:因此,每一个图表的创建,应该放在OnCreate函数或OnInitialUpdate函数中:其应用过程,与窗口类型的控件(如CButto…
void CMyPicoTestDlg::DrawWave(CDC *pDC,CRect &rectPicture) { float fDeltaX; float fDeltaY; int nX; int nY; CPen newPen; CPen *pOldPen; CBrush newBrush; CBrush *pOldBrush; fDeltaX=(); fDeltaY=(; newBrush.CreateSolidBrush(RGB(,,)); pOldBrush=pDC->Sel…
MFC画眼睛 换画笔(画刷)颜色(参考链接:https://blog.csdn.net/sunxiving/article/details/51272001) 由于画笔一旦创建后就无法修改.所以要修改画笔的颜色要用DeleteObject()函数将其删除​,之后再创建新的画笔 例子:换为白色 CBrush brush, *oldBrush;//创建画刷 brush.CreateSolidBrush(RGB(0,0,0));//原来为黑色 oldBrush=pDC->SelectObject(&…
一.电路版设计的先期工作 1.利用原理图设计工具绘制原理图,并且生成对应的网络表.当然,有些特殊情况下,如电路版比较简单,已经有了网络表等情况下也可以不进行原理图的设计,直接进入PCB设计系统,在PCB设计系统中,可以直接取用零件封装,人工生成网络表. 2.手工更改网络表将一些元件的固定用脚等原理图上没有的焊盘定义到与它相通的网络上,没任何物理连接的可定义到地或保护地等.将一些原理图和PCB封装库中引脚名称不一致的器件引脚名称改成和PCB封装库中的一致,特别是二.三极管等. 二.画出自己定义的非…
原文转自 https://wenku.baidu.com/view/b5460979700abb68a982fbcf.html 在常规条件下,MFC画出来的图形.文字都是有锯齿的.如下图所示: 怎样才能画出不带锯齿的图形呢?要用到GDI+这个MFC库.下面将以案例的方式讲述如何通过MFC画出不带锯齿的图形. 一.建立一个简单的MFC应用 一个简单的MFC应用包含两个文件,Hello.h和Hello.cpp.建立的方法是在VS中建立一个空项目,然而添加头文件Hello.h和源文件Hello.cpp…
最近在  https://mp.weixin.qq.com/s/3dEO0NZQv5YLqK72atG4Wg   官方公众号看到了 用WPF 制作 标尺 在去年项目上也接到了一个需求,用于排版自定义拖拽控件画布对齐的标尺,当时接到的要求是 需要横纵对齐的表次,并且鼠标滑动,刻度的上方需要跟着有影子划过的效果. 具体实现如下: 创建 标尺控件 RulerControl.cs 1 [TemplatePart(Name = "trackLine", Type = typeof(Line))]…
3D相关开发 [direct-X] 1.direct-X最小框架 [OpenGL] 1.环境搭建及最小系统 [OpenGL] 2.企业版VC6.0自带的Win32-OpenGL工程浅析 51单片机 [51单片机] 1602液晶显示控制代码 [51单片机] 1602液晶显示控制代码2 [51单片机] 定时器1 [51单片机] 定时器2-计数示例 [51单片机] 定时器3-计时示例 [51单片机] 中断1-中断整体介绍 [51单片机] TFT2.4彩屏1 [文字显示 画矩形] [51单片机] TFT…
#include"stdafx.h" #define GLUT_DISABLE_ATEXIT_HACK #include <GL/glut.h> //glut自动将gl.h和glu.h包含了 #include"math.h" #include <time.h> ; const GLfloat R = 20.0f; const GLfloat Pi = 3.1415926536f; // 太阳.地球和月亮 // 假设每个月都是30天 // 一年…
Protel99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,深受电子工程师的喜爱.为方便更多的电子爱好者掌握这一设计软件,本文将Protel99Se制作电路印制板基本流程以及注意事项进行说明. 关键词:PCB设计 Protel99Se电路印制板制作 注意事项 一.电路版设计的先期工作 1.利用原…
using System; using System.Drawing; //HttpUtility.UrlEncode /// <summary> ///Curve 的摘要说明 /// </summary> public class Curve { public Curve() { // //TODO: 在此处添加构造函数逻辑 // } /*******************************************************属性设置*************…
---此仅供用于学习交流,切勿用于商业用途,转载请注明http://www.cnblogs.com/mxbs/p/6213404.html. 利用VS2010创建一个单文档标准MFC工程,工程名为Draw,运行如图所示: 下面主要用来讲解函数和变量添加方法,以此弄明白MFC消息映射机制,接着实现一个简单的画线功能. 右击工程名,选择Class Wizard,在Project项选择工程名Draw(此为要处理的工程),在Class name项选择CDrawView(此为添加函数的类,此处表示要在视图…
这个是用最简单的方法,移动客户区,圆会不见,所以下一篇我还要改进. 首先新建一个MFC单文件,在资源那里的菜单下,建立画笔,可以弹出红画笔,蓝画笔和绿画笔,,给出ID_RED,ID_BLUE,ID_GREEN并且在视类下建立类向导添加command函数,这时候,我们要想下怎么表示这些颜色,我的做法是,在视类定义一个公有整型变量int m_pencolor,还要设置三个布尔变量(表示打钩状态,等下会说),(可以默认选红色)在视类头文件加上 {... public:bool statu2;//绿画笔…
上一节中鸡啄米主要讲的是画笔CPen的用法,前面也说了,GDI对象中最常用的就是画笔和画刷,本节就讲讲画刷CBrush. 鸡啄米依然是通过实例的方式来说明画刷的用法.此实例要实现的功能是,对话框上有一个按钮控件和一个图片控件,点击按钮弹出颜色对话框,然后在颜色对话框中选择颜色并点击“确定”后,图片控件中将显示选择的颜色. 其实此实例的功能,还可以通过重载对话框WM_CTLCOLOR消息的响应函数等方法来实现,但为讲解画刷的CBrush的使用,鸡啄米采用了下面代码中的方法. 以下是此实例的具体实施…
要求 1. 在客户区输出一条顺时针45度的直线.一个正方形.一个大圆: 2. 在客户区输出一个图标: 3. 当按下鼠标左键时,将以鼠标坐标为圆心画直径为20个单位的小圆. 首先设置两个变量,用来保存颜色和线宽.这样就但是通过程序设置圆或者线条的颜色和宽度了.(加入在view类的构造函数中) COLORREF color; int penwidth;</span>     2. 画45度直线的实现代码例如以下: CClientDC dc(this); CPen pen(PS_SOLID,penw…
新建单个文档的MFC应用程序,类视图——View项的属性——消息,WM_PAINT,创建OnPaint()函数 dc默认有一个画笔(实心1像素宽黑线). CPen画笔非实心线像素宽必须为1,否则膨胀接到一起,与实心线没有差异. CBrush画刷,用来填充封闭区域,默认白色填充. void CMFCApplication27View::OnPaint() { CPaintDC dc(this); // device context for painting // TODO: 在此处添加消息处理程序…
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/12368154.html 一.下载OpenCASCADE 官网下载是: http://www.opencascade.org/getocc/download/loadocc/ 我的百度云已经下载好的是: 链接:https://pan.baidu.com/s/1D-fw8vspKTOZ8GmAGBSVGw 提取码:mzp3 下载后运行完毕就是这样: 二.VS2017 MFC单文档配置OpenCA…
工作中遇到话流程图的项目,需要画带箭头的直线,经过摸索,解决:思路如下: (1) 两个点(p1,p2)确定一个直线,以直线的一个端点(假设p2)为原点,设定一个角度 (2)以P2为原点得到向量P2P1(P),向量P旋转theta角得到向量P1,向量P旋转-theta角得到向量P2 (3)伸缩向量至制定长度,平移变量到直线的末端 (4)现在已经有3个点了,画线就可 具体代码如下: void CworkflowDlg::DrawLine(CPoint p1, CPoint p2) { CClient…
>_<:这是给出窗口内外不同情况的处理展示的例子. >_<:MouseCap.h #include<afxwin.h> class CMyApp :public CWinApp { public: virtual BOOL InitInstance(); }; class CMainWindow:public CFrameWnd { protected: BOOL m_bTracking; //标志:鼠标按下为真,否则为假 BOOL m_bCaptureEndabled…
>_<:这里第一次介绍MFC的时间函数,功能和Win32里的计时器类似. >_<:这里还介绍了MFC的图形绘制函数,和Win32有一点区别 >_<:ABC.h #define EX 1 //该点左鼠标 #define OH 2 //该点右鼠标 class CMyApp : public CWinApp { public: virtual BOOL InitInstance (); }; class CMainWindow : public CFrameWnd //不是继…
[1.]CPngButton.h(资源是最后图片) #pragma once #include<atlimage.h> #define PNUM 19 #define PLAYTIME 100 // CPngButton class CPngButton : public CButton {     DECLARE_DYNAMIC(CPngButton) public:     CPngButton();     virtual ~CPngButton();     virtual void…
源代码:http://download.csdn.net/detail/nuptboyzhb/3961688 l 对话框 1.“插入”->“资源”->“对话框” 2.对话框属性如下: 双击对话框,建立对话框类.取名:LineParameter 3.在LineParameter.h头文件中添加#include "resource.h",否则:会报错:IDD_DIALOG4未定义 4.为LineParameter类增加如下成员变量: int m_colorR; int m_co…
源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961685 画图工具 1.     画直线 Ø  增加‘直线’菜单项,建立类向导: Ø  对CXXXXXXView类增加成员变量my_draw_flag.并在构造函数中初始化为0 Ø  在‘直线’菜单项处理函数中,将my_draw_flag=1:表示画直线 Ø  增加window消息处理,WM_LBUTTONDOWN 和WM_MOUSEMOVE和WM_LBUTTONUP Ø  增加成员变量 在构…
1.DrawTestDlg.h afx_msg void OnLButtonDown(UINT nFlags, CPoint point); afx_msg void OnLButtonUp(UINT nFlags, CPoint point); CPoint m_originPoint; 2.DrawTestDlg.cpp void CDrawTestDlg::OnLButtonDown(UINT nFlags, CPoint point) { m_originPoint.x = point.…
源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961690 1.    增加‘椭圆’菜单项,设置属性,添加类向导: 2.    编辑消息处理函数,设置画图变量标识my_draw_flag为5,并读取对话框里的数据. 3.    修改OnMouseMove消息处理函数. 3.1增加变量CvSize CvSize EllipseSize; 3.2           case 5的编程: case 5: EllipseSize.width=abs…
CPaintDC dc(this); HICON hIcon = (HICON)::LoadImage(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON),IMAGE_ICON, ,,); ::DrawIconEx(dc.GetSafeHdc(), , , hIcon, , , , NULL, DI_NORMAL | DI_COMPAT);…
前不久,公司举办了15周年庆,其中添加了一个抽奖环节,要从在读学员中随机抽取幸运学员,当然,这个任务就分到了我这里. 最后的效果如下,启动有个欢迎页面,数据是来自Excel的,点击开始则上面的学号及姓名等信息开始随机滚动,显示区域自适应长度变化等. 点击停止则停止滚动,将抽取的学员信息用Graphics绘制到当前窗体结果区域中:   用到的知识点: 1. DevExpress的GaugeControl的使用 2. DevExpress的TreeList的使用 3. 输入汉字获取其拼音显示 4.…