• 大小: 16.59MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-13
  • 语言: C/C++
  • 标签: MFC  dll  

资源简介

dll封装MFC对话框资源,博客中的源码工程。可以参看dll的资源封装以及使用。

资源截图

代码片段和文件信息

// LoginDlg.cpp : 实现文件
//
#include “stdafx.h“
#include “Skindll.h“
#include “LoginDlg.h“
#include “afxdialogex.h“


// CLoginDlg 对话框
IMPLEMENT_DYNAMIC(CLoginDlg CDialog)

CLoginDlg::CLoginDlg(CWnd* pParent /*=NULL*/)
: CDialog(CLoginDlg::IDD pParent)
{
m_State = -1;
}

CLoginDlg::~CLoginDlg()
{
}

void CLoginDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}


BEGIN_MESSAGE_MAP(CLoginDlg CDialog)
ON_WM_PAINT()
ON_WM_MOUSEMOVE()
ON_WM_LBUTTONDOWN()
ON_BN_CLICKED(IDOK &CLoginDlg::OnBnClickedOk)
ON_BN_CLICKED(IDCANCEL &CLoginDlg::OnBnClickedCancel)
END_MESSAGE_MAP()


// CLoginDlg 消息处理程序

//窗口初始化
BOOL CLoginDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_BkDC.LoadBitmap(IDB_BKBMP); //加载背景位图
m_cloesDC.LoadBitmap(IDB_CLOSE); //加载关闭按钮图
m_minDC.LoadBitmap(IDB_MIN); //加载最小化按钮图
m_SetDC.LoadBitmap(IDB_SETTING); //加载设置按钮图
m_rtClose = CRect(m_BkDC.Width()-m_cloesDC.Width()0m_BkDC.Width() m_cloesDC.Height());
m_rtMin = CRect(m_rtClose.left - m_minDC.Width() 0 m_rtClose.left m_minDC.Height());
m_rtSet = CRect(m_rtMin.left - m_SetDC.Width() 0 m_rtMin.left m_SetDC.Height());
GetDlgItem(IDOK)->GetWindowRect(&m_rtOK);
ScreenToClient(&m_rtOK);
GetDlgItem(IDCANCEL)->GetWindowRect(&m_rtCancel);
ScreenToClient(&m_rtCancel);
MoveWindow(0 0 m_BkDC.Width() m_BkDC.Height()); //设置窗口大小为背景位图大小
CenterWindow();
Invalidate(FALSE); //刷新界面
return TRUE;
}


void CLoginDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
dc.BitBlt(0 0 m_BkDC.Width() m_BkDC.Height() &m_BkDC 0 0 SRCCOPY);
dc.BitBlt(m_BkDC.Width()-m_cloesDC.Width() 0 m_cloesDC.Width() 
m_cloesDC.Height() &m_cloesDC 0 0 SRCCOPY);
dc.BitBlt(m_BkDC.Width()-m_cloesDC.Width() - m_minDC.Width() 0 m_minDC.Width() 
m_minDC.Height() &m_minDC 0 0 SRCCOPY);
dc.BitBlt(m_BkDC.Width()-m_cloesDC.Width() - m_minDC.Width()-m_SetDC.Width() 0 m_SetDC.Width() 
m_SetDC.Height() &m_SetDC 0 0 SRCCOPY);
}


void CLoginDlg::onmousemove(UINT nFlags CPoint point)
{
CDC *pDC = GetDC();
CRBMemoryDC dc1 dc2 dc3;

if (m_rtClose.PtInRect(point))
dc1.LoadBitmap(IDB_SELCLOSE);
else
dc1.LoadBitmap(IDB_CLOSE);

if (m_rtMin.PtInRect(point))
dc2.LoadBitmap(IDB_SELMIN);
else
dc2.LoadBitmap(IDB_MIN);

if (m_rtSet.PtInRect(point))
dc3.LoadBitmap(IDB_SELSETTING);
else
dc3.LoadBitmap(IDB_SETTING);

pDC->BitBlt(m_BkDC.Width()-m_cloesDC.Width() 0 dc1.Width() dc1.Height() &dc1 0 0 SRCCOPY);
pDC->BitBlt(m_BkDC.Width()-m_cloesDC.Width() - m_minDC.Width() 0
dc2.Width() dc2.Height() &dc2 0 0 SRCCOPY);
pDC->BitBlt(m_BkDC.Width()-m_cloesDC.Width() - m_minDC.Width()-m_SetDC.Width() 0
 dc3.Width() dc3.Height() &dc3 0 0 SRCCOPY);

ReleaseDC(pDC);
CDialog::onmousemove(nFlags point);
}


//鼠标左键按下消息响应
void CLoginDlg::OnLButtonDown(UINT nFlags CPoint po

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-12-11 16:34  Skindll\
     目录           0  2015-12-11 14:34  Skindll\Debug\
     文件     8729088  2015-12-11 14:38  Skindll\Debug\Skindll.dll
     文件        1219  2015-12-11 14:33  Skindll\Debug\Skindll.exp
     文件    14585888  2015-12-11 14:38  Skindll\Debug\Skindll.ilk
     文件        2644  2015-12-11 14:33  Skindll\Debug\Skindll.lib
     文件    27462656  2015-12-11 14:38  Skindll\Debug\Skindll.pdb
     文件      187904  2015-12-11 14:37  Skindll\Debug\test.exe
     文件     1126040  2015-12-11 14:37  Skindll\Debug\test.ilk
     文件     7080960  2015-12-11 14:37  Skindll\Debug\test.pdb
     目录           0  2015-12-11 16:35  Skindll\ipch\
     目录           0  2015-12-11 13:52  Skindll\Skindll\
     文件        1339  2015-12-10 20:09  Skindll\Skindll.sln
     文件       42496  2015-12-11 16:34  Skindll\Skindll.v11.suo
     目录           0  2015-12-11 16:36  Skindll\Skindll\Debug\
     文件        3686  2015-12-11 14:38  Skindll\Skindll\LoginDlg.cpp
     文件        1604  2015-12-11 14:31  Skindll\Skindll\LoginDlg.h
     文件        3654  2015-11-01 17:00  Skindll\Skindll\RBMermoryDC.cpp
     文件        1309  2015-12-11 10:10  Skindll\Skindll\RBMermoryDC.h
     文件        2382  2015-12-10 19:56  Skindll\Skindll\ReadMe.txt
     目录           0  2015-12-11 12:02  Skindll\Skindll\res\
     文件        1976  2015-12-11 12:07  Skindll\Skindll\resource.h
     文件        2106  2015-12-11 11:18  Skindll\Skindll\res\aaaaaa.bmp
     文件        2106  2015-12-11 10:39  Skindll\Skindll\res\close.bmp
     文件        2106  2015-12-11 11:18  Skindll\Skindll\res\closeSe111l.bmp
     文件        2106  2015-12-11 12:00  Skindll\Skindll\res\closeSel.bmp
     文件        2106  2015-12-11 11:18  Skindll\Skindll\res\dddd.bmp
     文件        2106  2015-12-11 10:44  Skindll\Skindll\res\left.bmp
     文件        2106  2015-12-11 12:01  Skindll\Skindll\res\leftSel.bmp
     文件     1200056  2015-12-11 09:39  Skindll\Skindll\res\main.bmp
     文件        2106  2015-12-11 10:41  Skindll\Skindll\res\min.bmp
............此处省略32个文件信息

评论

共有 条评论