📄 dialog_study.h
字号:
#if !defined(AFX_DIALOG_STUDY_H__22E2F273_F92B_47A3_8343_40DC34FF0A81__INCLUDED_)
#define AFX_DIALOG_STUDY_H__22E2F273_F92B_47A3_8343_40DC34FF0A81__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// Dialog_Study.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// Dialog_Study dialog
////////////////////////////////////////////////////////////////////////////
// CWAVEDlg dialog
#define INP_BUFFER_SIZE 16384 //13684 = 16 * 1024
typedef struct{
DWORD dwRIFF; //riff
DWORD dwFileLen; //length
DWORD dwWAVE; //rifftype
DWORD dw_fmt; //chunkID
DWORD dwFmtLen; //chunkSize以下formatex 结构的大小
WORD wDataType; //wformattag
WORD wNChannels; //wchannels
DWORD dwSamplingRate; //dwsamplespersec 11 2b 00 00
DWORD dwNBytesPerSec; //dwavgbytespersec
WORD wAlignment; //wblockalign
WORD wNBitsPerSam; //wbitspersample
WORD cbSize; //00 00
//WORD TE03;
DWORD dwfact; //
DWORD dwtest;
WORD test1;
WORD test2;
DWORD dwdata; // //"data"
DWORD dwDataLen; //波形数据的大小
}WAVEHEADER;
class Dialog_Study : public CDialog
{
// Construction
public:
Dialog_Study(CWnd* pParent = NULL); // standard constructor
CFile outWaveFile;
WAVEHEADER WvH2;
WAVEHEADER WvH;
//CWAVEDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(Dialog_Study)
enum { IDD = IDD_DIALOG_Study };
CComboBox m_ctrl_command;
CButton m_ctrl_play;
CEdit m_Ctrl_Info;
CString m_name;
CString m_information;
CString m_command;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(Dialog_Study)
// public:
//virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL);
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
BOOL bRecording,bPlaying,bReverse,bPaused,bEnding,bTerminating; //标记
DWORD dwDataLength,dwRepetitions;
HWAVEIN hWaveIn;
HWAVEOUT hWaveOut;
PBYTE pBuffer1,pBuffer2,pSaveBuffer,pNewBuffer;
PWAVEHDR pWaveHdr1,pWaveHdr2;
WAVEFORMATEX waveform;
// Generated message map functions
//{{AFX_MSG(Dialog_Study)
afx_msg void OnBUTTONRecord();
afx_msg void OnBUTTONPlay();
afx_msg void OnMM_WIM_OPEN(UINT wParam,LONG lParam);
afx_msg void OnMM_WIM_DATA(UINT wParam,LONG lParam);
afx_msg void OnMM_WIM_CLOSE(UINT wParam,LONG lParam);
afx_msg void OnMM_WOM_OPEN(UINT wParam,LONG lParam);
afx_msg void OnMM_WOM_DONE(UINT wParam,LONG lParam);
afx_msg void OnMM_WOM_CLOSE(UINT wParam,LONG lParam);
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnBUTTONStop();
afx_msg void OnBUTTONSave();
virtual void OnOK();
//afx_msg void OnSetfocusCOMBOCommand();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
int Close();
int WriteFile();
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DIALOG_STUDY_H__22E2F273_F92B_47A3_8343_40DC34FF0A81__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -