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

📄 blockinfoform.cpp

📁 类似Linux操作系统0.11版文件系统的文件系统设计和Windows下的操作程序
💻 CPP
字号:
// BlockInfoForm.cpp : 实现文件
//

#include "stdafx.h"
#include "ULExplorer.h"
#include "BlockInfoForm.h"
#include ".\blockinfoform.h"


// CBlockInfoForm

IMPLEMENT_DYNCREATE(CBlockInfoForm, CFormView)

CBlockInfoForm::CBlockInfoForm()
	: CFormView(CBlockInfoForm::IDD)
{
}

CBlockInfoForm::~CBlockInfoForm()
{
}

void CBlockInfoForm::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_STATIC_BLOCKINFO, m_StaticGroup);
}

BEGIN_MESSAGE_MAP(CBlockInfoForm, CFormView)
	ON_WM_ERASEBKGND()
	ON_WM_SIZE()
END_MESSAGE_MAP()


// CBlockInfoForm 诊断

#ifdef _DEBUG
void CBlockInfoForm::AssertValid() const
{
	CFormView::AssertValid();
}

void CBlockInfoForm::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif //_DEBUG


// CBlockInfoForm 消息处理程序

BOOL CBlockInfoForm::OnEraseBkgnd(CDC* pDC)
{
	COLORREF ColorBoot = RGB(242, 108, 78);
	COLORREF ColorSuper = RGB(255, 149, 255);
	COLORREF ColorIMap = RGB(255, 0, 255);
	COLORREF ColorZMap = RGB(255, 255, 0);
	COLORREF ColorInode = RGB(25, 148, 55);
	COLORREF ColorEmpty = RGB(161, 200, 255);
	COLORREF ColorUsed = RGB(79, 145, 255);

	// TODO: 在此添加消息处理程序代码和/或调用默认值
	CRect rcWindow = CXTPClientRect(this);	
	pDC->FillSolidRect(rcWindow, GetXtremeColor(COLOR_WINDOW));

	HFONT hOldFont = (HFONT)pDC->SelectObject((HFONT)::GetStockObject (DEFAULT_GUI_FONT));
	pDC->SetBkMode(TRANSPARENT);
	int x = 40, y = 15;
	pDC->TextOut(x+100, y+=20 , "引导块");
	pDC->FillSolidRect(x, y, 10, 10, ColorBoot);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->TextOut(x+100, y+=20, "超级块");
	pDC->FillSolidRect(x, y, 10, 10, ColorSuper);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->TextOut(x+100, y+=20, "i节点位图");
	pDC->FillSolidRect(x, y, 10, 10, ColorIMap);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->TextOut(x+100, y+=20, "逻辑块位图");
	pDC->FillSolidRect(x, y, 10, 10, ColorZMap);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->TextOut(x+100, y+=20, "i节点表");
	pDC->FillSolidRect(x, y, 10, 10, ColorInode);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->TextOut(x+100, y+=20, "空闲块");
	pDC->FillSolidRect(x, y, 10, 10, ColorEmpty);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->TextOut(x+100, y+=20, "已使用块");
	pDC->FillSolidRect(x, y, 10, 10, ColorUsed);
	pDC->Draw3dRect(x, y, 10, 10, RGB(0,0,0), RGB(0,0,0));

	pDC->SelectObject(hOldFont);

    return TRUE;
}

void CBlockInfoForm::OnSize(UINT nType, int cx, int cy)
{
	CFormView::OnSize(nType, cx, cy);

	if ( m_StaticGroup.GetSafeHwnd() )
	{
		m_StaticGroup.MoveWindow(10, 5, cx-20, cy-20);
	}
}

⌨️ 快捷键说明

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