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

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

?? guiframewnd.cpp

?? 該文件包含有C8051單片機中實現UART波特率自檢的功能
?? CPP
字號:
//-----------------------------------------------------------------------//
// This is a part of the GuiLib MFC Extention.							 //	
// Autor  :  Francisco Campos											 //
// (C) 2002 Francisco Campos <www.beyondata.com> All rights reserved     //
// This code is provided "as is", with absolutely no warranty expressed  //
// or implied. Any use is at your own risk.								 //		
// You must obtain the author's consent before you can include this code //
// in a software library.												 //
// If the source code in  this file is used in any application			 //
// then acknowledgement must be made to the author of this program		 //	
// fco_campos@tutopia.com													 //
// Version :1.1															 //
// Modified by : Francisco Campos										 //	 
//-----------------------------------------------------------------------//

#include "stdafx.h"
#include "..\header\guiframewnd.h"
#include "..\header\guiframewnd.h"
#include "..\header\GuiMiniFrame.h"

IMPLEMENT_DYNCREATE(CGuiFrameWnd, CFrameWnd)
CGuiFrameWnd::CGuiFrameWnd(void)
{
	m_MdiTabbed=FALSE;
}

CGuiFrameWnd::~CGuiFrameWnd(void)
{
}

BOOL CGuiFrameWnd::PreCreateWindow(CREATESTRUCT& cs)
{
	return CFrameWnd::PreCreateWindow(cs);
}

BOOL CGuiFrameWnd::PreTranslateMessage(MSG* pMsg) 
{
	if (m_wndMenuBar.TranslateFrameMessage(pMsg))
		return TRUE;
	
	return CFrameWnd::PreTranslateMessage(pMsg);
}

//*************************************************************************
BOOL CGuiFrameWnd::PreCreateWindow(CREATESTRUCT& cs, UINT nIconID)
{
	cs.lpszClass = AfxRegisterWndClass( 0, NULL, NULL,
		AfxGetApp()->LoadIcon(nIconID));
	ASSERT(cs.lpszClass);

	return CFrameWnd::PreCreateWindow(cs);
}

void CGuiFrameWnd::EnableDocking(DWORD dwDockStyle)
{
	ASSERT((dwDockStyle & ~ (CBRS_ALIGN_ANY | CBRS_FLOAT_MULTI)) == 0);


	m_pFloatingFrameClass = RUNTIME_CLASS(CMiniDockFrameWnd);
	CGuiDocBarExten* pDock;
	DWORD dwStyle = WS_CHILD| WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
	DWORD dwstyle;

	pDock = new CGuiDocBarExten();
	pDock->Create(this,dwStyle|CBRS_TOP, AFX_IDW_DOCKBAR_TOP);
	dwstyle = pDock->GetBarStyle();
	dwstyle &= ~CBRS_BORDER_ANY;
	pDock->SetBarStyle(dwstyle);

	pDock = new CGuiDocBarExten();
	pDock->Create(this, dwStyle|CBRS_BOTTOM, AFX_IDW_DOCKBAR_BOTTOM);
	dwstyle = pDock->GetBarStyle();
	dwstyle &= ~CBRS_BORDER_ANY;
	pDock->SetBarStyle(dwstyle);

	pDock = new CGuiDocBarExten();
	pDock->Create(this,dwStyle|CBRS_LEFT, AFX_IDW_DOCKBAR_LEFT);
	dwstyle = pDock->GetBarStyle();
	dwstyle &= ~CBRS_BORDER_ANY;
	pDock->SetBarStyle(dwstyle);

	pDock = new CGuiDocBarExten();
	pDock->Create(this,dwStyle|CBRS_RIGHT, AFX_IDW_DOCKBAR_RIGHT);
	dwstyle = pDock->GetBarStyle();
	dwstyle &= ~CBRS_BORDER_ANY;
	pDock->SetBarStyle(dwstyle);
	m_pFloatingFrameClass = RUNTIME_CLASS(CGuiMiniFrame);
//	DockSpecialBars();

}

void CGuiFrameWnd::ShowHideBar(CGuiControlBar* pBar)
{
	if (pBar->IsWindowVisible())
		ShowControlBar(pBar, FALSE, FALSE);
	else
		ShowControlBar(pBar, TRUE, FALSE);
}

void CGuiFrameWnd::ShowHideBar(CControlBar* pBar)
{
	if (pBar->IsWindowVisible())
		ShowControlBar(pBar, FALSE, FALSE);
	else
		ShowControlBar(pBar, TRUE, FALSE);
}

void CGuiFrameWnd::SavePosBar(CString szBars)
{
	POSITION pos = m_listControlBars.GetHeadPosition();
    while (pos != NULL)
    {
        CGuiControlBar* pBar = (CGuiControlBar*) m_listControlBars.GetNext(pos);
        ASSERT(pBar != NULL);
        if (pBar->IsKindOf(RUNTIME_CLASS(CGuiControlBar)))
            pBar->SaveBar(szBars);
    }
}

void CGuiFrameWnd::LoadPosBar(CString szBars)
{
	POSITION pos = m_listControlBars.GetHeadPosition();
    while (pos != NULL)
    {
        CGuiControlBar* pBar = (CGuiControlBar*) m_listControlBars.GetNext(pos);
        ASSERT(pBar != NULL);
        if (pBar->IsKindOf(RUNTIME_CLASS(CGuiControlBar)))
            pBar->LoadStateBar(szBars);
    }
}

void CGuiFrameWnd::DockSpecialBars()
{
	m_dockToolbarTop.Create(this,CBRS_ALIGN_BOTTOM);
	m_dockToolbarBottom.Create(this,CBRS_ALIGN_TOP);
	m_dockToolbarLeft.Create(this,CBRS_ALIGN_LEFT);
	m_dockToolbarRight.Create(this,CBRS_ALIGN_RIGHT);

/*	m_dockToolbarTop.EnableDocking(CBRS_ALIGN_TOP);
	m_dockToolbarBottom.EnableDocking(CBRS_ALIGN_BOTTOM);
	m_dockToolbarLeft.EnableDocking(CBRS_ALIGN_LEFT);
	m_dockToolbarRight.EnableDocking(CBRS_ALIGN_RIGHT);

	DockControlBar(&m_dockToolbarTop);
	DockControlBar(&m_dockToolbarBottom);
	DockControlBar(&m_dockToolbarLeft);
	DockControlBar(&m_dockToolbarRight);*/
}
/////////////////////////////////////////////////////////////////////////////
// CGuiMDIFrame message handlers
//***********************************************************************
BOOL CGuiFrameWnd::DestroyWindow()
{
	CWinApp* pApp = AfxGetApp();
	TCHAR szSection[256];
	wsprintf(szSection, "%s-Main", sProfile);
	CRect rc;
	GetWindowRect(rc);
	pApp->WriteProfileString(szSection, NULL, NULL);
	pApp->WriteProfileInt(szSection, "left", rc.left);
	pApp->WriteProfileInt(szSection, "right", rc.right);
	pApp->WriteProfileInt(szSection, "bottom", rc.bottom);
	pApp->WriteProfileInt(szSection, "top", rc.top);

	SaveBarState(sProfile);
	SavePosBar(sProfile);
	return CFrameWnd::DestroyWindow();
}

//***********************************************************************
BOOL CGuiFrameWnd::VerifyBarState(LPCTSTR lpszProfileName)
{
    CDockState state;
    state.LoadState(lpszProfileName);

    for (int i = 0; i < state.m_arrBarInfo.GetSize(); i++)
    {
        CControlBarInfo* pInfo = (CControlBarInfo*)state.m_arrBarInfo[i];
        ASSERT(pInfo != NULL);
        int nDockedCount = pInfo->m_arrBarID.GetSize();
        if (nDockedCount > 0)
        {
            // dockbar
            for (int j = 0; j < nDockedCount; j++)
            {
                UINT nID = (UINT) pInfo->m_arrBarID[j];
                if (nID == 0) continue; // row separator
                if (nID > 0xFFFF)
                    nID &= 0xFFFF; // placeholder - get the ID
                if (GetControlBar(nID) == NULL)
                    return FALSE;
            }
        }

        if (!pInfo->m_bFloating) // floating dockbars can be created later
            if (GetControlBar(pInfo->m_nBarID) == NULL)
                return FALSE; // invalid bar ID
    }

    return TRUE;
}


void CGuiFrameWnd::LoadBars()
{
	
	CWinApp* pApp = AfxGetApp();
	TCHAR szSection[256];
 	wsprintf(szSection, "%s-Main", sProfile);
	CRect rc=CRect(0,0,0,0);
	rc.left=pApp->GetProfileInt(szSection, "left",0);
	rc.top=pApp->GetProfileInt(szSection, "top",0);
	rc.bottom=pApp->GetProfileInt(szSection, "bottom",GetSystemMetrics(SM_CYSCREEN));
	rc.right=pApp->GetProfileInt(szSection, "right",GetSystemMetrics(SM_CXSCREEN));
	MoveWindow(rc);
	
	if (VerifyBarState(sProfile))
	{
		LoadBarState(sProfile);
		LoadPosBar(sProfile);
	}
}

BEGIN_MESSAGE_MAP(CGuiFrameWnd, CFrameWnd)
ON_WM_CREATE()
END_MESSAGE_MAP()

int CGuiFrameWnd::InitMenu(UINT uIDMenu)
{
	if (!m_wndMenuBar.CreateEx(this, WS_CHILD | WS_VISIBLE | CBRS_TOP
		| CBRS_GRIPPER | CBRS_SIZE_DYNAMIC ) ||
		!m_wndMenuBar.LoadMenuBar(uIDMenu))
	{
		TRACE0("Failed to create menubar\n");
		return -1;      // fail to create
	}	
	m_NewMenu.LoadMenu(uIDMenu);
	m_wndCool.Install(this);
	m_wndCool.LoadToolbar(uIDMenu);
	
	return 0;
}

int CGuiFrameWnd::InitStatusBar(const UINT* lpIDArray,int nSize)
{
	if (!m_wndStatusBar.Create(this) ||
		!m_wndStatusBar.SetIndicators(lpIDArray,
		  nSize))
	{
		TRACE0("Failed to create status bar\n");
		return -1;      // fail to create
	}
	return 0;
}

int CGuiFrameWnd::InitToolBar(UINT uID,UINT uIDMenu)
{
	if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
		| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC,CRect(0,0,0,0),uID) ||
		!m_wndToolBar.LoadToolBar(uIDMenu))
	{
		TRACE0("Failed to create toolbar\n");
		return -1;      // fail to create
	}
	return 0;
}

int CGuiFrameWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
		return -1;
	// TODO:  Add your specialized creation code here

	return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色图在线观看| 99re热视频这里只精品| 欧美日韩精品免费观看视频 | 国产一二三精品| 欧美日韩另类国产亚洲欧美一级| 亚洲午夜影视影院在线观看| 成人av先锋影音| 久久尤物电影视频在线观看| 天天综合天天做天天综合| 国产69精品久久99不卡| 欧美视频在线一区| 亚洲午夜视频在线| 99re视频精品| 全国精品久久少妇| 久久综合99re88久久爱| 黄色成人免费在线| 26uuu精品一区二区三区四区在线| 香蕉成人伊视频在线观看| 欧美性大战久久久| 日本视频一区二区| 欧美另类高清zo欧美| 亚洲欧美日韩国产手机在线 | 成人污污视频在线观看| 中文字幕亚洲一区二区av在线 | 香蕉久久一区二区不卡无毒影院| 91在线视频网址| 亚洲影院理伦片| 欧美色爱综合网| 美国毛片一区二区三区| 香蕉av福利精品导航| 欧美一级二级三级乱码| 欧美激情一区在线观看| 99精品在线免费| 人人狠狠综合久久亚洲| 国产精品久久福利| 日韩免费电影一区| 91麻豆高清视频| 国产精品亚洲а∨天堂免在线| 亚洲精品国产a| 国产精品乱人伦| 精品国产精品网麻豆系列| 欧美亚洲高清一区二区三区不卡| 天堂va蜜桃一区二区三区| 国产精品美女久久久久久2018| 欧美日韩国产综合久久| 91同城在线观看| 成人短视频下载| 粉嫩蜜臀av国产精品网站| 日韩成人dvd| 午夜精品久久久久久久 | 色八戒一区二区三区| 国产精品性做久久久久久| 麻豆视频一区二区| 日韩主播视频在线| 日韩高清在线不卡| 午夜婷婷国产麻豆精品| 午夜国产精品影院在线观看| 亚洲精品国产高清久久伦理二区| 国产精品伦理在线| 亚洲精选一二三| 国产福利一区二区三区视频| 天堂精品中文字幕在线| 日本色综合中文字幕| 国内成+人亚洲+欧美+综合在线| 午夜久久久久久久久| 日精品一区二区三区| av在线不卡免费看| 精品国内二区三区| 免费看欧美美女黄的网站| 在线观看视频91| 国产精品美女久久久久久久久久久| 无码av中文一区二区三区桃花岛| 97精品国产露脸对白| 久久久国际精品| 国产在线播精品第三| 精品少妇一区二区三区视频免付费 | 久久久高清一区二区三区| ...av二区三区久久精品| 丝袜美腿亚洲色图| 91玉足脚交白嫩脚丫在线播放| 91精品国产福利| 国产精品乱人伦| 狠狠色综合播放一区二区| 色婷婷综合在线| 国产精品久久看| 国产高清在线精品| 日韩一区二区三区四区| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲大尺度视频在线观看| 91亚洲男人天堂| 国产精品视频看| 国产a视频精品免费观看| 日韩午夜中文字幕| 日韩av电影天堂| 欧美一区二区在线视频| 亚洲va欧美va人人爽| 日本道精品一区二区三区| 亚洲精品国产精华液| 国产综合久久久久影院| 日韩欧美激情四射| 成人免费福利片| 亚洲欧美日韩一区| 奇米四色…亚洲| 在线免费不卡电影| 亚洲男女一区二区三区| 成人欧美一区二区三区小说| 性欧美疯狂xxxxbbbb| 不卡一区中文字幕| 欧美精品1区2区3区| 亚洲一区二区三区国产| 972aa.com艺术欧美| 亚洲欧美精品午睡沙发| 欧美午夜精品久久久久久超碰| 亚洲激情自拍偷拍| 91精品国产91热久久久做人人| 日韩成人免费电影| 国产片一区二区| 欧美色综合影院| 精品在线你懂的| 国产精品不卡一区二区三区| 97久久超碰国产精品| 午夜免费欧美电影| 久久女同互慰一区二区三区| 国产91色综合久久免费分享| 国产精品久久午夜| 欧美一级xxx| 91麻豆自制传媒国产之光| 图片区日韩欧美亚洲| 国产精品蜜臀av| 欧美大度的电影原声| 一本在线高清不卡dvd| 久久精品国产久精国产爱| 亚洲视频精选在线| 久久久久久久网| 欧美不卡激情三级在线观看| 成人黄色av网站在线| 日韩高清在线不卡| 亚洲成人免费在线观看| 中文字幕 久热精品 视频在线| 4438x亚洲最大成人网| 色成人在线视频| 99精品国产91久久久久久| 狠狠色狠狠色合久久伊人| 亚洲一区二区在线观看视频| 中文字幕国产精品一区二区| 日韩精品一区二区三区老鸭窝 | 国产精品五月天| 久久精品男人的天堂| 亚洲精品在线观看网站| 制服丝袜亚洲播放| 宅男在线国产精品| 国产精品电影一区二区三区| 欧美性xxxxxxxx| 在线播放视频一区| 色欧美88888久久久久久影院| 成人免费高清视频在线观看| 国产美女精品人人做人人爽| 老司机午夜精品99久久| 免费成人小视频| 国产精品99久久久久久似苏梦涵| 亚洲天堂av一区| 国产精品久久久久久久蜜臀| 欧美一区二区视频在线观看| 成人午夜视频免费看| 日韩国产欧美三级| 亚洲成年人网站在线观看| 国产精品久久久久久久久晋中 | 国内成人精品2018免费看| 亚洲女人小视频在线观看| 精品国产乱码久久久久久1区2区 | 舔着乳尖日韩一区| 亚洲综合视频网| 一区二区三区电影在线播| 亚洲国产岛国毛片在线| 国产午夜精品久久久久久久 | 91香蕉视频在线| 99精品国产91久久久久久| 成人97人人超碰人人99| 丁香婷婷综合激情五月色| 成人一区二区三区视频 | 久久伊人蜜桃av一区二区| 精品国产露脸精彩对白 | 国产盗摄一区二区| 国产精品99精品久久免费| 国产一区二区看久久| 国产高清在线精品| 日本福利一区二区| 69p69国产精品| 中文幕一区二区三区久久蜜桃| 国产日韩精品一区| 亚洲福中文字幕伊人影院| 日韩av电影天堂| 国产成人精品1024| 在线一区二区三区四区| 日韩亚洲欧美综合| 成人欧美一区二区三区在线播放| 手机精品视频在线观看| 久久婷婷色综合| 国产成a人无v码亚洲福利| 久久人人97超碰com|