亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? resizingdialog.cpp

?? 這是書上的代碼
?? CPP
字號:
////////////////////////////////////////////////////////////////////////
// ResizingDialog.cpp : implementation file
//
// The base class for the dialog box you want to allow resizing
// Use SetConrolInfo() to determine how each control behaves when
// the user resize the dialog box.
// (The "Windows default" is ANCHORE_TOP | ANCHORE_LEFT)
//
// e.g. For a right aligned OK button you'll probably call:
// SetControlInfo(IDOK, ANCHORE_RIGHT)
// For a text control that needs to resize with the dialog you may do:
// SetControlInfo(IDD_MYEDITOR, RESIZE_BOTH)
//
// Note: The dialog box "remebers" its size on destroy and the next time
// you launch it, it'll set the dialog size back to the previous size.
// If you don't like this behavior, call SetRememberSize(FALSE)
//
// LIMITATIONS:
// 1) This class does not handle overlapping controls, 
//    e.g., you cannot place two controls one (RESIZE_VER) and the other
//    with (RESIZE_VER | ANCHORE_BOTTOM) one below the other, they may ovelapp.
//
// 2) This class does not remember the mode of the dialog (Maximized/Minimized)
//	  it would be easy to add this feature, though.

#include "stdafx.h"
#include "ResizingDialog.h"

#ifdef _DEBUG
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif


/////////////////////////////////////////////////////////////////////////////
// CResizingDialog dialog

CResizingDialog::CResizingDialog(UINT nIDTemplate, CWnd* pParentWnd) : 
				CDialog(nIDTemplate,pParentWnd)
{
	m_minWidth = m_minHeight = 0;	// flag that GetMinMax wasn't called yet
	m_old_cx = m_old_cy = 0;
	m_bSizeChanged = FALSE;
	m_nIDTemplate = nIDTemplate;
	m_bRememberSize = TRUE;
}

void CResizingDialog::SetControlInfo(WORD CtrlId,WORD Anchore)			
{
	if(Anchore == ANCHORE_LEFT)
		return; // Do nothing

	// Add resizing behaviour for the control
	DWORD c_info = CtrlId | (Anchore << 16);
	m_control_info.Add(c_info);
}

BEGIN_MESSAGE_MAP(CResizingDialog, CDialog)
	//{{AFX_MSG_MAP(CResizingDialog)
	ON_WM_SIZE()
	ON_WM_GETMINMAXINFO()
	ON_WM_DESTROY()
	ON_WM_CREATE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


//////////////////////////////////////////////////////////////////////////
// CResizingDialog message handlers



//////////////////////////////////////////////////////////////////////////
// OnInitDialog()
//
BOOL CResizingDialog::OnInitDialog()
{
	CDialog::OnInitDialog();

	if(m_bRememberSize)
	{
		// Load the previous size of the dialog box from the INI/Registry
		char dialog_name[7];
		
		itoa(m_nIDTemplate, dialog_name, 16);
		int cx = AfxGetApp()->GetProfileInt(dialog_name,"CX",0);
		int cy = AfxGetApp()->GetProfileInt(dialog_name,"CY",0);
		
		if(cx && cy)
		{
			SetWindowPos( NULL, 0, 0, cx, cy, SWP_NOMOVE );
		}
	}
	
	return FALSE;  // return TRUE  unless you set the focus to a control
}


void CResizingDialog::OnSize(UINT nType, int cx, int cy) 
{
	CDialog::OnSize(nType, cx, cy);
	
	int dx = cx - m_old_cx;
	int dy = cy - m_old_cy;

	if(m_old_cx)
	{
		// Move and Size the controls using the information
		// we got in SetControlInfo()
		//
		m_bSizeChanged = TRUE;
		CRect WndRect;
		CWnd *pWnd;
		DWORD c_info;
		short Anchore;
		for(int i = 0; i < m_control_info.GetSize(); i++)
		{
			c_info = m_control_info[i];
			pWnd = GetDlgItem(LOWORD(c_info));
			if(!pWnd)
			{
				TRACE("Control ID - %d NOT FOUND!!\n",LOWORD(c_info));
				continue;
			}

			if(!HIWORD(c_info))
				continue; // do nothing if anchored to top and or left

			Anchore = HIWORD(c_info);
			pWnd->GetWindowRect(&WndRect);  ScreenToClient(&WndRect);
			
			if(Anchore & RESIZE_HOR)
				WndRect.right += dx;
			else if(Anchore & ANCHORE_RIGHT)
				WndRect.OffsetRect(dx,0);

			if(Anchore & RESIZE_VER)
				WndRect.bottom += dy;
			else if(Anchore & ANCHORE_BOTTOM)
				WndRect.OffsetRect(0,dy);

			pWnd->MoveWindow(&WndRect);
		}

	}
	m_old_cx = cx;
	m_old_cy = cy;
}

void CResizingDialog::OnGetMinMaxInfo(MINMAXINFO* lpMMI)
{
    if (!m_minWidth) // first time
		{
		CDialog::OnGetMinMaxInfo(lpMMI);
		return;
		}
    lpMMI->ptMinTrackSize.x = m_minWidth;
    lpMMI->ptMinTrackSize.y = m_minHeight;
}

void CResizingDialog::OnDestroy() 
{
	// Save the size of the dialog box, so next time
	// we'll start with this size
	if(m_bRememberSize && m_bSizeChanged && m_old_cx && m_old_cy)
		{
		CRect rc;
		GetWindowRect(&rc);
		char dialog_name[7];	
		itoa(m_nIDTemplate, dialog_name, 16);				

		AfxGetApp()->WriteProfileInt(dialog_name,"CX",rc.Width());
		AfxGetApp()->WriteProfileInt(dialog_name,"CY",rc.Height());
		}
	m_minWidth = m_minHeight = m_old_cx = m_old_cy = 0;
	m_bSizeChanged = FALSE;
	CDialog::OnDestroy();
}


int CResizingDialog::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CDialog::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// Remember the original size so later we can calculate
	// how to place the controls on dialog Resize
	m_minWidth  = lpCreateStruct->cx;
	m_minHeight = lpCreateStruct->cy;
	return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成人av一区二区| 日本韩国精品在线| 蜜臀精品一区二区三区在线观看| kk眼镜猥琐国模调教系列一区二区| 91亚洲永久精品| 国产精品久久久久久妇女6080 | 五月天亚洲婷婷| 亚洲欧美视频在线观看视频| 波多野洁衣一区| 成人av在线看| av一区二区三区黑人| 成人app网站| 一本大道久久精品懂色aⅴ| 色综合久久中文字幕| 色狠狠色噜噜噜综合网| 欧美亚洲高清一区| 欧美一级在线视频| 久久亚洲一区二区三区明星换脸 | 精品一区二区三区免费播放| 美女在线视频一区| 国产一区二区免费视频| 99久久精品国产网站| 色成年激情久久综合| 欧美日韩精品是欧美日韩精品| 欧美一区二区三区影视| 久久久精品免费免费| 亚洲免费看黄网站| 日韩精品成人一区二区在线| 久久国内精品自在自线400部| 国产乱人伦偷精品视频不卡| 97精品电影院| 日韩一级大片在线观看| 欧美激情一区二区在线| 亚洲无线码一区二区三区| 另类人妖一区二区av| 成人aa视频在线观看| 在线观看91精品国产麻豆| 久久人人爽爽爽人久久久| 中文字幕亚洲电影| 亚洲国产精品天堂| 成人av电影免费观看| 欧美一级一区二区| 亚洲欧美在线视频观看| 久久91精品国产91久久小草| 91美女福利视频| 精品国产一区二区三区忘忧草| 中文字幕亚洲在| 精品中文字幕一区二区小辣椒| 一本色道久久综合狠狠躁的推荐 | 日本不卡的三区四区五区| 成人免费电影视频| 日韩精品一区二区三区在线| 玉米视频成人免费看| 国产美女一区二区| 日韩欧美三级在线| 一级特黄大欧美久久久| 成人三级在线视频| 欧美成人精品福利| 亚洲高清不卡在线| 一本大道久久a久久精二百| 日本一区二区久久| 久久99久久久欧美国产| 7777精品伊人久久久大香线蕉经典版下载 | 在线精品亚洲一区二区不卡| 国产精品伦一区| 国产精品77777| 精品日韩在线观看| 九九九精品视频| 精品欧美一区二区久久 | 久久精品网站免费观看| 麻豆精品一二三| 欧美精品在线一区二区三区| 亚洲大片免费看| 欧美天天综合网| 亚洲国产精品一区二区久久| 欧美视频一区二区在线观看| 亚洲精品国产视频| 91黄色在线观看| 亚洲一区在线观看免费| 欧美性猛交xxxxxx富婆| 亚洲国产成人av好男人在线观看| 欧美综合色免费| 性做久久久久久久免费看| 欧美日韩激情在线| 毛片不卡一区二区| 欧美大尺度电影在线| 激情综合色综合久久| ww久久中文字幕| 国产精品1区2区3区在线观看| 26uuu色噜噜精品一区二区| 国产一区二区三区电影在线观看| 国产福利91精品一区| 成人av在线资源网| 波多野结衣精品在线| 久久精品综合网| 久久精品国产**网站演员| 久久女同精品一区二区| 懂色av一区二区三区蜜臀| 亚洲人一二三区| 3d动漫精品啪啪| 精东粉嫩av免费一区二区三区| 久久蜜桃av一区精品变态类天堂| 成人激情小说网站| 一区二区日韩av| 久久亚洲免费视频| 一本色道久久加勒比精品 | 亚洲成人黄色影院| 精品99999| 91精品1区2区| 国产精品一区二区视频| 亚洲第一电影网| 国产三级一区二区| 91福利视频久久久久| 精品一区二区三区蜜桃| 亚洲精品乱码久久久久久黑人| 日韩欧美一二区| 色综合天天综合| 美女精品一区二区| 一区二区三区中文字幕精品精品 | 国产综合色视频| 亚洲免费在线视频| 国产亚洲制服色| 欧美日韩三级一区| av成人免费在线观看| 免费观看在线综合| 亚洲精品美腿丝袜| 国产拍欧美日韩视频二区| 欧美在线短视频| 不卡视频在线看| 激情文学综合网| 日本在线不卡视频一二三区| 亚洲女同ⅹxx女同tv| 久久综合九色综合97婷婷| 欧美日韩激情一区二区| 色综合夜色一区| 不卡高清视频专区| 国产永久精品大片wwwapp| 亚洲成人7777| 亚洲韩国一区二区三区| 亚洲欧洲成人av每日更新| 久久久www成人免费毛片麻豆| 欧美一区二区三区的| 欧美日韩国产影片| 在线观看av一区| 91久久精品一区二区三| 日本道色综合久久| 色狠狠桃花综合| 欧美四级电影在线观看| 在线亚洲+欧美+日本专区| 成人av免费在线播放| caoporn国产精品| 成人高清免费在线播放| 大陆成人av片| 成人黄色在线视频| 不卡一二三区首页| 99九九99九九九视频精品| 粉嫩久久99精品久久久久久夜 | 日韩毛片视频在线看| 成人免费在线视频观看| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 亚洲私人黄色宅男| 综合精品久久久| 一区二区三区四区蜜桃| 亚洲美女视频在线| 午夜精品福利一区二区三区蜜桃| 亚洲午夜激情av| 日韩成人av影视| 精品一区二区三区日韩| 国产69精品久久久久毛片| 成人国产在线观看| 欧美在线观看视频在线| 91精品国产综合久久福利| 欧美va亚洲va香蕉在线| 国产精品欧美一区喷水| 一区二区三区在线视频播放| 亚洲国产精品天堂| 激情久久五月天| 成人综合日日夜夜| 欧美日韩一区二区在线观看视频| 日韩三级免费观看| 国产精品天干天干在观线 | 欧美精品 日韩| 久久亚洲精品国产精品紫薇| 欧美极品美女视频| 亚洲综合免费观看高清在线观看| 日本伊人色综合网| 国产传媒一区在线| 欧美中文字幕一区| www一区二区| 亚洲国产成人高清精品| 国产精品一区一区| 在线观看www91| 国产性天天综合网| 五月天激情综合网| 成人激情小说网站| 欧美一二三区在线| 一级做a爱片久久| 成人午夜在线免费| 欧美一区二区三区公司| 一区二区三区在线观看动漫|