⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 draw.cpp

📁 是一个运动控制器的实验平台软件,主要通过编程实现伺服/步进电机的不同控制模式.
💻 CPP
字号:
// DRAW.cpp : implementation file
//

#include "stdafx.h"
#include "BASICTEST.h"
#include "DRAW.h"
#include "_button.h"
#include "GT400SG.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDRAW dialog


CDRAW::CDRAW(CWnd* pParent /*=NULL*/)
	: CDialog(CDRAW::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDRAW)
	m_pos = _T("0.0000");
	//}}AFX_DATA_INIT
	
}


void CDRAW::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDRAW)
	DDX_Text(pDX, IDC_STATIC_POS, m_pos);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDRAW, CDialog)
	//{{AFX_MSG_MAP(CDRAW)
	ON_WM_PAINT()
	ON_WM_TIMER()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDRAW message handlers

void CDRAW::OnPaint() 
{
//	CPaintDC dc(this); // device context for painting
	
	// TODO: Add your message handler code here
/*	CRect rect;
	CWnd* pWnd = GetDlgItem(IDC_STATIC1);
	CDC* pControlDC =pWnd->GetDC();
	CBrush brush1;
	brush1.CreateSolidBrush(RGB(0,0,255));
	//pControlDC->SetBkColor(RGB(255,0,0));	
	//pWnd->GetWindowRect(&rect);
	pWnd->GetClientRect(&rect);
	pControlDC->Rectangle(rect);
	//pWnd->Invalidate();
//	pWnd->UpdateWindow();
//	pControlDC->Rectangle(rect);
	pControlDC->SelectStockObject(BLACK_BRUSH);
//	pControlDC->Rectangle(rect.left,rect.top,rect.right,rect.bottom);
	pControlDC->MoveTo(rect.left+30,rect.bottom/2);
	pControlDC->LineTo(rect.right-20,rect.bottom/2);
	pControlDC->LineTo(rect.right-30,rect.bottom/2-10);
	pControlDC->MoveTo(rect.right-20,rect.bottom/2);
	pControlDC->LineTo(rect.right-30,rect.bottom/2+10);
	pControlDC->MoveTo(rect.right/2,rect.bottom/2);
	pControlDC->LineTo(rect.right/2,rect.top-10);
//	pControlDC->LineTo(0,0);
//	pControlDC->LineTo(100,100);
	pWnd->ReleaseDC(pControlDC);
//	pWnd->UpdateWindow();*/
	// Do not call CDialog::OnPaint() for painting messages
}

BOOL CDRAW::OnInitDialog() 
{
	CDialog::OnInitDialog();
	short rtn;
	rtn=GT_Open();
    SetTimer(2,100,NULL);
	
	// TODO: Add extra initialization here
//	C_Button* button=(C_Button*) GetDlgItem(IDC_BUTTON1);
//	button->SetForeColor(RGB(255,0,0));
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

BEGIN_EVENTSINK_MAP(CDRAW, CDialog)
    //{{AFX_EVENTSINK_MAP(CDRAW)
	ON_EVENT(CDRAW, IDC_COMMAND1, 1 /* Click */, OnClickCommand1, VTS_NONE)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()



/*void CDRAW::OnClickCommand2() 
{
	// TODO: Add your control notification handler code here
//	CStatic *pstatic=(CStatic*) GetDlgItem(IDC_STATIC2);
//	pstatic->SetIcon(AfxGetApp()->LoadIcon(IDI_ICON2));
}*/

void CDRAW::OnClickCommand1() 
{
	// TODO: Add your control notification handler code here
	short rtn;
	rtn=GT_Open();
	rtn=GT_LmtSns(0xff);
	rtn=GT_Axis(1);
	rtn=GT_ClrSts();
	rtn=GT_AxisOn();
	rtn=GT_PrflT();
	rtn=GT_SetAcc(0.2);
	rtn=GT_SetPos(10000);
	rtn=GT_SetVel(1);
	rtn=GT_Update();
}

void CDRAW::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	
	long realpos;
	CString str;
	short rtn;
	rtn=GT_Axis(1);
	rtn=GT_GetAtlPos(&realpos);
	str.Format("%l",realpos);
	m_pos=str;
	UpdateData(FALSE);
	CDialog::OnTimer(nIDEvent);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -