getfilesize.cpp
来自「IO函数调用测试」· C++ 代码 · 共 115 行
CPP
115 行
// GetFileSize.cpp : implementation file
//
#include "stdafx.h"
#include <afxtempl.h>
#include "help.h"
#include "Status.h"
#include "IOExplorer.h"
#include "NumericEdit.h"
#include "TraceEvent.h"
#include "EventList.h"
#include "EventLog.h"
#include "Handle.h"
#include "HandleCombo.h"
#include "handleManager.h"
#include "TraceManager.h"
#include "CreateFileSheet.h"
#include "GetFileSizeEvent.h"
#include "HandlePage.h"
#include "GetFileSize.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CGetFileSize property page
IMPLEMENT_DYNCREATE(CGetFileSize, CHandlePage)
CGetFileSize::CGetFileSize() : CHandlePage(CGetFileSize::IDD)
{
//{{AFX_DATA_INIT(CGetFileSize)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
CGetFileSize::~CGetFileSize()
{
}
void CGetFileSize::DoDataExchange(CDataExchange* pDX)
{
CHandlePage::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CGetFileSize)
DDX_Control(pDX, IDC_GETFILESIZE, c_GetFileSize);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CGetFileSize, CHandlePage)
//{{AFX_MSG_MAP(CGetFileSize)
ON_BN_CLICKED(IDC_GETFILESIZE, OnGetfilesize)
ON_BN_CLICKED(IDC_HELPBUTTON, OnHelp)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CGetFileSize message handlers
void CGetFileSize::OnGetfilesize()
{
CCreateFileSheet * sheet = getSheet();
CHandle * ho = sheet->HandleList.getCurrentHandle();
GetFileSizeEvent * e = new GetFileSizeEvent(ho == NULL ? _T("") : ho->Name,
ho == NULL ? 0 : ho->h);
e->execute();
if(e->lasterror != 0)
c_Status.SetWindowText(e->lasterror);
else
c_Status.SetWindowText(e->display_result());
sheet->log->add(e);
updateControls();
}
BOOL CGetFileSize::OnInitDialog()
{
CHandlePage::OnInitDialog();
updateControls();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
/****************************************************************************
* CGetFileSize::updateControls
* Result: void
*
* Effect:
* Updates all the controls
****************************************************************************/
void CGetFileSize::updateControls()
{
CCreateFileSheet * sheet = getSheet();
CHandle * ho = sheet->HandleList.getCurrentHandle();
GetFileSizeEvent e(ho == NULL ? _T("") : ho->Name,
ho == NULL ? 0 : ho->h);
CString s;
s = e.display();
c_Text.SetWindowText(s);
}
void CGetFileSize::OnHelp()
{
AfxGetApp()->WinHelp(GetFileSizeHelp, HELP_CONTEXT);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?