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

📄 displaywindow.h

📁 USB接口虚拟示波器软件软件工程
💻 H
字号:
#if !defined(AFX_DISPLAYWINDOW_H__FC97F5C2_5127_11D6_A757_00055DA07630__INCLUDED_)
#define AFX_DISPLAYWINDOW_H__FC97F5C2_5127_11D6_A757_00055DA07630__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DisplayWindow.h : header file
//

//#include "DataDevice.h"
/////////////////////////////////////////////////////////////////////////////
// DisplayWindow window
#include <afxmt.h>

typedef struct _THREAD_CONTROL
{
   HANDLE hDevice;
   DWORD Ioctl;
   PVOID InBuffer;
   DWORD InBufferSize;
   PVOID OutBuffer;
   DWORD OutBufferSize;
   DWORD BytesReturned;
   HANDLE completionEvent;
   BOOL  status;
} THREAD_CONTROL, *PTHREAD_CONTROL;



typedef  struct PageD
{  int page;
   short int data[5][1600];
   int Lr,Rr;
   PageD * up; 	
   PageD * next;
   HGLOBAL hHandle;
}  PAGEDATA;


class DisplayWindow : public CStatic
{
	DECLARE_DYNCREATE(DisplayWindow)

// Construction
public:
	DisplayWindow();
	
    PAGEDATA * pagedata,* pagedata_start,* pg; 
	
	HCURSOR m_hCursor1,m_hCursor2;
	
	CEvent comEventStart;
//	CEvent comEventDraw;
	
	float zongbei;
	int speed;
	int ps,Lr,Rr;
	int X_B,X_H,X_S,X_I,X_D,X_E,X_b,X_h,X_s,X_i,X_d,X_e;

	BOOL SelectT;
	int ht[256];
	float Ix,Iu;
//	float  data[5][1600];
//	float  e[5][1600]; 
	 
	//BYTE  ADdata[1024];
	
	CRect  disRect;
	BOOL dis_Flag,dis_DyRound;
	
	int mouse_x,mouse_y;	
	int stp,disDyRound;
	
	BOOL firstdiswindow;
	CString dismes;
    float sampleFt;
	float vlots;
	int   sampleT;
	//	CEvent comEventEnd;
// Attributes
public:
// Operations
public:
	BOOL Caiyang,Play,L_and_R,Play_First,DrawLineFlag;
    BOOL  Kill_Theard,Kill_Play;
	HCURSOR m_hCursor_H,m_hCursor_V;
	float db,xindian_db;
	int hh,ww,h_st,w_st,step,page;
	int point [5][760];

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(DisplayWindow)
	public:
	virtual void OnFinalRelease();
	virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL);
	virtual BOOL DestroyWindow();
	protected:
	virtual void PreSubclassWindow();
	//}}AFX_VIRTUAL
protected:
    CBrush	m_HollowBrush;
    HANDLE  hUsbInDevice;
    CBitmap LeftBitmap;
    CBitmap TopBitmap;
	CBitmap LeftSCaleBitmap;
	BITMAP leftbm,topbm,leftscalebm;
	CRect lrect,trect;
	CFont cymFont;
	///测量线参数
	 
	 

	 int LeftScaleSit,RightScaleSit,UpScaleSit,DownScaleSit;

	 CRect rcClip;
	 int leftSit;
	 int topSit;
	 BOOL disScaleLine;


CPoint m_ptCaretPos,draw[5];

// Implementation
public:
	int tdv;
	void DisCymometer(CDC *pDC,int x,int y);
	void DrawIcurrenWave();
	void DisScaleLine();
	CRect DisRect;
	void DisLeftAxis(CDC * pDC,int x,int y);
	void DisVoltage(CDC *pDC,int x,int y,int w,int h);
	BOOL DrawDispBack(CDC *pDC,int Width,int Height);
	BYTE m_nTriggerType;
	int Trigger();
	void StopAD();
	void PauseAD();
	void StartAD();
	void GetBackToBmp();
	BOOL GetADdata(HANDLE hDevice);
	BOOL UsbOpenDriver (HANDLE *phDeviceHandle, PCHAR devicename);
	void GetFenXinData();
	BOOL DrwaDyRrand(int s);
	BOOL GetDYData();
	BOOL GetDinBiaoData(int x);
	void ReDrawSCreen();
	void DisDinBiaoLine(CDC * pDC);
	
	void DrawViewLine(int x);
	BOOL DeletePage();
	BOOL RecFlag;
	void DrawLine();
	void DisPageData(BOOL up_next);
	BOOL AddPage(int p);
	void DisMes(CString mes);
	void line(int xx);
	void ReDraw();
	int hz;
	virtual ~DisplayWindow();

	// Generated message map functions
protected:
	void DisScaleLine(CDC *pDC,int x,int y,int w,int h);
	BYTE Select;
	void DisTopAxis(CDC * pDC, int x,int y);
	void DisTimeVlem(CDC *pDC,int x,int y,int w,int h);
	void TransferThread( PTHREAD_CONTROL threadControl);
	void draw_line(CDC * pDC,int x,BOOL flag,char F);
	//{{AFX_MSG(DisplayWindow)
	afx_msg BOOL OnEraseBkgnd(CDC* pDC);
	afx_msg void OnPaint();
	afx_msg UINT OnNcHitTest(CPoint point);
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnMouseMove(UINT nFlags, CPoint point);
	afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
	afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
	afx_msg void OnTimer(UINT nIDEvent);
	//}}AFX_MSG

	DECLARE_MESSAGE_MAP()
	DECLARE_OLECREATE(DisplayWindow)

	// Generated OLE dispatch map functions
	//{{AFX_DISPATCH(DisplayWindow)
		// NOTE - the ClassWizard will add and remove member functions here.
	//}}AFX_DISPATCH
	DECLARE_DISPATCH_MAP()
	DECLARE_INTERFACE_MAP()
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_DISPLAYWINDOW_H__FC97F5C2_5127_11D6_A757_00055DA07630__INCLUDED_)

⌨️ 快捷键说明

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