mkdirdlg.cpp

来自「大型实验:Unix文件管系统模拟。用内存中的一段区域模拟硬盘空间」· C++ 代码 · 共 68 行

CPP
68
字号
// MkdirDlg.cpp : implementation file
//

#include "stdafx.h"
#include "FileSys.h"
#include "MkdirDlg.h"
#include "filsys.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMkdirDlg dialog


CMkdirDlg::CMkdirDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CMkdirDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CMkdirDlg)
	m_dirname = _T("");
	//}}AFX_DATA_INIT
}


void CMkdirDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CMkdirDlg)
	DDX_Text(pDX, IDC_EDIT1, m_dirname);
	DDV_MaxChars(pDX, m_dirname, 14);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CMkdirDlg, CDialog)
	//{{AFX_MSG_MAP(CMkdirDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMkdirDlg message handlers

void CMkdirDlg::OnOK() 
{
	// TODO: Add extra validation here

	UpdateData(true);
	if(m_dirname.GetLength()<=0)
		return;

	int r = _mkdir(m_dirname.GetBuffer(m_dirname.GetLength()));
	
	if(r<0){
		m_dirname = "";
		UpdateData(false);

		((CStatic*)GetDlgItem(IDC_ERROR_MKDIR))->SetWindowText("创建目录失败,有相同名字的目录!");

		return ;
	}


	CDialog::OnOK();
}

⌨️ 快捷键说明

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