Windows程序设计
最终要求是来设计一个桌面绘图工具
九霄云客
一个脚踏实地的梦想家
展开
-
Winndows程序设计(MFC)---设置对话框内笔的样式
添加ListBox工具对于ListBox添加控件类型的变量,在对话框里面添加了一个变量于CSet.hCListBox m_IstLine;对ListBox添加类向导,并在函数内添加相应的值:void CSet::OnShowWindow(BOOL bShow, UINT nStatus){ CDialogEx::OnShowWindow(bShow, nStatus); // TODO: 在此处添加消息处理程序代码 m_IstLine.AddString(_T("1 Soild Line.原创 2020-08-13 18:24:32 · 183 阅读 · 0 评论 -
Winndows程序设计(MFC)---设置对话框的笔粗及颜色
添加按钮和编辑框修改编辑框和按钮的ID在CGraph.h文件中添加新变量:int m_nPenWidth;int m_Color;在CGraph.cpp文件中附初值:CGraph::CGraph(){ m_nType = 0; m_nPenWidth = 1; m_Color = RGB(0, 0, 0);}在CSet.h文件中添加与之对应的变量:public: int nPenWidth; afx_msg void OnBnClickedColor..原创 2020-08-13 17:21:35 · 398 阅读 · 0 评论 -
Winndows程序设计(MFC)---在绘图界面内添加>设置对话框<
首先在资源视图的Dialog键下添加新的对话框,然后再在视图的工具栏内添加相应的属性(直接拖动就可)。在对话框中添加新的类CSet,后在view.cpp文件中添加头文件#include"CSet.h"。最后完成view.cpp中关于OnSet函数的编写:void CMy7View::OnSet(){ // TODO: 在此添加命令处理程序代码 CSet set; set.DoModal();//显示对话框}...原创 2020-08-13 07:56:12 · 273 阅读 · 0 评论 -
Winndows程序设计(MFC)---改良绘图界面框,使其更友好化
添加工具栏添加快捷键改良菜单栏添加工具栏(Toolbar):绘出直线,矩形,椭圆,并修改各自的ID与菜单栏的各项ID相对应。添加快捷键(Accelerator):设置Ctrl+L,Ctrl+R,Ctrl+E分别对应和菜单栏相同的ID即可。改良菜单栏:对菜单栏的图形键下各项添加事件处理程序:void CMy7View::OnUpdateLine(CCmdUI* pCmdUI){ // TODO: 在此添加命令更新用户界面处理程序代码 if (m_Graph.m_nType == 0.原创 2020-08-13 06:53:56 · 178 阅读 · 0 评论 -
Winndows程序设计(MFC)---使用菜单初步完成绘图工具的设计
首先在资源视图中选择菜单键,并在菜单键下添加图形按钮,然后在图形下设置一些选择项,即直线,矩形,椭圆,并且修改他们的ID,最后对直线,矩形,椭圆分别添加事件处理函数于view.cpp中:void CMy7View::OnLine(){ // TODO: 在此添加命令处理程序代码 m_Graph.m_nType = 0;}void CMy7View::OnRect(){ // TODO: 在此添加命令处理程序代码 m_Graph.m_nType = 1;}void CMy7Vie原创 2020-08-13 05:19:02 · 481 阅读 · 0 评论 -
Winndows程序设计(MFC)---用数组来实现多个图形类
首先在framework .h中设置数组的头文件#include<afxtempl.h>然后在view.h中设置数组:private: CGraph m_Graph; CArray <CGraph, CGraph&>m_Graphs;最后在view.cpp中用一个for循环来实现一个一个的图形类:for (int i = 0; i < m_Graphs.GetSize(); i++) { m_Graphs[i].Draw(pDC);}...原创 2020-08-12 16:54:12 · 217 阅读 · 0 评论 -
Winndows程序设计(MFC)---设计图形类来实现之前的鼠标和键盘消息
改进的地方:在cpp文件中:新添加的图形类到view文件之前#include "7Doc.h"#include"CGraph.h"#include "7View.h"在view.h文件中:private: CGraph m_Graph;在view.cpp文件中:#include "7Doc.h"#include "CGraph.h"#include "7View.h"void CMy7View::OnDraw(CDC* pDC){ CMy7Doc* pDoc =原创 2020-08-12 16:07:48 · 188 阅读 · 0 评论 -
Winndows程序设计(MFC)---实现键盘消息
基于上篇博客代码下进行修改:对于view建立keydown的类向导void CMy7View::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags){ // TODO: 在此添加消息处理程序代码和/或调用默认值 CRect rect; GetClientRect(&rect); if (nChar == VK_LEFT) { if (m_ptBegin.x - 10 > 0) { m_ptBegin.x -= 10;原创 2020-08-11 23:40:30 · 422 阅读 · 0 评论 -
Winndows程序设计(MFC)---在view的h和cpp中同时调整和修改来实现鼠标图形
做出的修改:在view.h中做出的修改private: CPoint m_ptBegin; CPoint m_ptEnd;在view.cpp中做出的修改ondraw函数中:pDC->Rectangle(m_ptBegin.x, m_ptBegin.y, m_ptEnd.x, m_ptEnd.y);pDC->MoveTo(m_ptBegin);pDC->LineTo(m_ptEnd);类向导中:void CMy7View::OnLButtonDown(UINT nF原创 2020-08-11 21:24:06 · 211 阅读 · 0 评论 -
Winndows程序设计(MFC)---简单图形的设计
主要的操作都在CMy4View::OnDraw(CDC* pDC)函数里面:文本颜色的设置文本背景的设置画笔的设置画刷的设置简单图形的设置 pDC->SetTextColor(RGB(0, 255, 0));//0,255,0->绿 pDC->SetBkColor(RGB(255, 0, 0)); pDC->TextOut(m_ptMouse.x, m_ptMouse.y, m_strMsg); CPen newPen(PS_SOLID, 12, RGB(原创 2020-08-11 17:51:32 · 312 阅读 · 0 评论 -
Winndows程序设计(MFC)---在view的h和cpp中同时调整和修改来实现鼠标消息
// 4View.cpp: CMy4View 类的实现//#include "pch.h"#include "framework.h"// SHARED_HANDLERS 可以在实现预览、缩略图和搜索筛选器句柄的// ATL 项目中进行定义,并允许与该项目共享文档代码。#ifndef SHARED_HANDLERS#include "4.h"#endif#include "4Doc.h"#include "4View.h"#ifdef _DEBUG#define new DEB原创 2020-08-11 00:15:09 · 199 阅读 · 0 评论 -
Windows程序设计---利用MFC添加鼠标消息
// 4View.cpp: CMy4View 类的实现//#include "pch.h"#include "framework.h"// SHARED_HANDLERS 可以在实现预览、缩略图和搜索筛选器句柄的// ATL 项目中进行定义,并允许与该项目共享文档代码。#ifndef SHARED_HANDLERS#include "4.h"#endif#include "4Doc.h"#include "4View.h"#ifdef _DEBUG#define new DEB原创 2020-08-10 10:18:02 · 438 阅读 · 0 评论 -
Windows程序设计---在空白框内实现点击效果
// 3.cpp : 定义应用程序的入口点。//#include "framework.h"#include "3.h"#define MAX_LOADSTRING 100// 全局变量:HINSTANCE hInst; // 当前实例WCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本WCHAR szWindowClass[MAX_LOADSTRING];原创 2020-08-09 17:17:56 · 527 阅读 · 0 评论 -
Windows程序设计---添加消息框
// 1.cpp : 定义应用程序的入口点。//#include "framework.h"#include "1.h"#define MAX_LOADSTRING 100// 全局变量:HINSTANCE hInst; // 当前实例WCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本WCHAR szWindowClass[MAX_LOADSTRING];原创 2020-08-03 23:32:26 · 582 阅读 · 0 评论