在好例子网,分享、交流、成长!
您当前所在位置:首页C/C++ 开发实例C/C++语言基础 → c++ 高仿QQ电脑管家界面 实例源码

c++ 高仿QQ电脑管家界面 实例源码

C/C++语言基础

下载此实例
  • 开发语言:C/C++
  • 实例大小:6.47M
  • 下载次数:74
  • 浏览次数:980
  • 发布时间:2017-12-24
  • 实例类别:C/C++语言基础
  • 发 布 人:ziming2018
  • 文件格式:.7z
  • 所需积分:2
 相关标签: QQ UI c MFC

实例介绍

【实例简介】
高仿QQ电脑管家界面 用的是MFC   DirectUI 实现

【实例截图】

from clipboard


from clipboard

【核心代码】


// QQPCMgrDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "QQPCMgr.h"
#include "QQPCMgrDlg.h"
#include "DlgSkin.h"


#ifdef _DEBUG
#define new DEBUG_NEW
#endif


CQQPCMgrDlg::CQQPCMgrDlg(CWnd* pParent /*=NULL*/)
	: CDlgBase(CQQPCMgrDlg::IDD, pParent)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

	m_nScore = 100;
	m_nProgress = 0;
	m_nVirus = 6723172;
	m_nWebSit = 192123123;
	m_uTimerTest = -1;
	m_uTimerTestWeb = -1;
}

void CQQPCMgrDlg::DoDataExchange(CDataExchange* pDX)
{
	CDlgBase::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(CQQPCMgrDlg, CDlgBase)
	ON_WM_QUERYDRAGICON()

	ON_MESSAGE(WM_SKIN, OnMessageSkin)
	ON_MESSAGE(WM_MIAN_MENU, OnMessageMainMenu)

	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


// CQQPCMgrDlg 消息处理程序

BOOL CQQPCMgrDlg::OnInitDialog()
{
	srand((unsigned)time(NULL));

	CDlgBase::OnInitDialog();

	SetIcon(m_hIcon, TRUE);
	SetIcon(m_hIcon, FALSE);

	//启动定时器
	m_uTimerTestWeb = CTimer::SetTimer(3000);

	return TRUE;
}

inline void CQQPCMgrDlg::InitUI(CRect rcClient)
{
	CRect rcTemp;
	int nStartX = 0;
	int nStartY = 0;
	CControlBase * pControlBase = NULL;

	int nXStartButton = rcClient.right - 45 - 31 - 31;
	int nYStartButton = 0;
	rcTemp.SetRect(nXStartButton, 0, nXStartButton   31, 29);
	pControlBase = new CImageButton(GetSafeHwnd(),this, BT_MENU, rcTemp);
	((CImageButton *)pControlBase)->SetBitmap(IDB_BT_MENU);
	m_vecControl.push_back(pControlBase);

	nXStartButton -= 31;
	rcTemp.SetRect(nXStartButton, 0, nXStartButton   31, 29);
	pControlBase = new CImageButton(GetSafeHwnd(),this, BT_SKIN, rcTemp);
	((CImageButton *)pControlBase)->SetBitmap(IDB_BT_SKIN);
	m_vecControl.push_back(pControlBase);
	
	nXStartButton -= 46;
	rcTemp.SetRect(nXStartButton, 0, nXStartButton   46, 29);
	pControlBase = new CImageButton(GetSafeHwnd(),this, BT_FEEDBACK, rcTemp);
	((CImageButton *)pControlBase)->SetBitmap(IDB_BT_FEEDBACK);
	m_vecControl.push_back(pControlBase);
	
	

 	rcTemp.SetRect(13, 13, 13   179, 13   44);
 	pControlBase = new CPicture(GetSafeHwnd(), this, PIC_LOGO, rcTemp);
 	((CPicture *)pControlBase)->SetBitmap(IDB_PNG_LOGO);
 	m_vecArea.push_back(pControlBase);

	rcTemp.SetRect(1, 75, rcClient.right - 1, 75   45);
	pControlBase = new CTab(GetSafeHwnd(), this, TAB, rcTemp);
	CTab *pTab = (CTab *)pControlBase;;
	pTab->SetSeperator(true, IDB_TAB_SEPERATOR);
	pTab->InsertItem(-1, 1, TEXT("首页"), IDB_TAB_1);
	pTab->InsertItem(-1, 2, TEXT("杀毒"), IDB_TAB_2);
	pTab->InsertItem(-1, 3, TEXT("清理垃圾"), IDB_TAB_3);
	pTab->InsertItem(-1, 4, TEXT("电脑加速"), IDB_TAB_4);
	pTab->InsertItem(-1, 5, TEXT("修复漏洞"), IDB_TAB_5);
	pTab->InsertItem(-1, 6, TEXT("软件管理"), IDB_TAB_6);
	pTab->InsertItem(-1, 7, TEXT("电脑诊所"), IDB_TAB_7);
	pTab->SetSelectItem(0);
	m_vecControl.push_back(pControlBase);

	
	rcTemp.SetRect(rcClient.right - 70, rcClient.bottom - 26, rcClient.right - 70   60, rcClient.bottom - 26   19);
	pControlBase = new CImageButton(GetSafeHwnd(),this, BT_BOX, rcTemp, false);
	((CImageButton *)pControlBase)->SetBitmap(IDB_BT_BOX);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 15;
	nYStartButton = rcClient.bottom - 25;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   200, nYStartButton   16);
	pControlBase = new CHideButton(GetSafeHwnd(),this, BT_VERSION, rcTemp, TEXT("版本:8.6.10358.215"), TEXT("检查更新"));
	((CHideButton *)pControlBase)->SetFont(TEXT("微软雅黑"), 12);
	m_vecControl.push_back(pControlBase);

	//首页
	nXStartButton = rcClient.right - 82 - 153;
	nYStartButton = 184;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   153, nYStartButton   53);
	pControlBase = new CImageButton(GetSafeHwnd(),this, BT_ALL_DETECT, rcTemp, false);
	((CImageButton *)pControlBase)->SetBitmap(IDB_BT_ALL_DETECT);
	m_vecControl.push_back(pControlBase);

	//提示
	nXStartButton = 203;
	nYStartButton = 177;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   400, nYStartButton   30);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_SCORE, rcTemp, TEXT("上次体检得分"), Color(0, 0, 0), TEXT("微软雅黑"), 23);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 203;
	nYStartButton = 218;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   400, nYStartButton   20);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_SCORE_TIP, rcTemp, TEXT("全面检查电脑和QQ帐号可能存在的风险"), Color(56, 56, 56), TEXT("微软雅黑"), 14);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 366;
	nYStartButton = 182   25;
	rcTemp.SetRect(nXStartButton, nYStartButton - 43, nXStartButton   92, nYStartButton);
	pControlBase = new CImageString(GetSafeHwnd(),this, PIC_HP_SCAN_FINISH_SCORE, rcTemp, 88, DT_LEFT, DT_BOTTOM);
	((CImageString *)pControlBase)->SetBitmap(IDB_SEFA_NUMBER, TEXT("0123456789"));
	m_vecControl.push_back(pControlBase);

	//状态
	nXStartButton = 50;
	nYStartButton = 170;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   120, nYStartButton   132);
	pControlBase = new CRuning(GetSafeHwnd(),this, PIC_HP_SCAN_STATUS, rcTemp);
	((CRuning *)pControlBase)->SetBitmap(IDB_HP_SCAN_STATUS, 10);
	((CRuning *)pControlBase)->SetRun(false, 3);
	m_vecControl.push_back(pControlBase);

	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   120, nYStartButton   106);
	pControlBase = new CImageString(GetSafeHwnd(),this, PIC_HP_SCAN_SCORE, rcTemp, 88);
	((CImageString *)pControlBase)->SetBitmap(IDB_WHITE_NUMBER, TEXT("0123456789"));
	pControlBase->SetVisible(FALSE);
	m_vecControl.push_back(pControlBase);

	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   120, nYStartButton   106);
	pControlBase = new CRuning(GetSafeHwnd(),this, PIC_HP_SCAN_RUNING, rcTemp);
	((CRuning *)pControlBase)->SetBitmap(IDB_PNG_HP_RUNING, 10);
	((CRuning *)pControlBase)->SetRun(true);
	pControlBase->SetVisible(FALSE);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 207;
	nYStartButton = 181;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   400, nYStartButton   20);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_PROGRESS_TIP, rcTemp, TEXT("正在进行体检,请稍候 ..."), Color(0, 0, 0), TEXT("微软雅黑"), 16, FontStyleRegular, FALSE);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 208;
	nYStartButton = 214;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   483, nYStartButton   17);
	pControlBase = new CProgress(GetSafeHwnd(), this, PRO_HP_PROGRESS, rcTemp, 50, FALSE);
	((CProgress *)pControlBase)->SetBitmap(IDB_PROGRESS);
	m_vecControl.push_back(pControlBase);
	
	nXStartButton = 208   483;
	nYStartButton = 214 - 2;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   20, nYStartButton   20);
	pControlBase = new CImageButton(GetSafeHwnd(),this, BT_CANCEL_PROGRESS, rcTemp, false, TEXT(""), FALSE);
	((CImageButton *)pControlBase)->SetBitmap(IDB_BT_CANCEL);
	m_vecControl.push_back(pControlBase);	

	rcTemp.SetRect(208, 278, 208   553, 278   1);
	pControlBase = new CLine(GetSafeHwnd(),this, LINE_SCANING, rcTemp, Color(225, 232, 237), FALSE);
	m_vecArea.push_back(pControlBase);

	nXStartButton = 205;
	nYStartButton = 248;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   56, nYStartButton   14);
	pControlBase = new CTextButton(GetSafeHwnd(),this, BT_RESCAN, rcTemp, TEXT("重新扫描"));
	((CTextButton *)pControlBase)->SetFont(TEXT("微软雅黑"), 12);
	pControlBase->SetVisible(FALSE);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 272;
	nYStartButton = 248;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   30, nYStartButton   14);
	pControlBase = new CTextButton(GetSafeHwnd(),this, BT_RETURN, rcTemp, TEXT("返回"));
	((CTextButton *)pControlBase)->SetFont(TEXT("微软雅黑"), 12);
	pControlBase->SetVisible(FALSE);
	m_vecControl.push_back(pControlBase);


	nXStartButton = 207;
	nYStartButton = 240;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   400, nYStartButton   16);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_SCANING_TIP, rcTemp, TEXT("正在扫描:"), Color(122, 122, 122), TEXT("微软雅黑"), 12, FontStyleRegular, FALSE);
	m_vecControl.push_back(pControlBase);	

	nXStartButton = 206;
	nYStartButton = 455;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   220, nYStartButton   22);
	pControlBase = new CRuning(GetSafeHwnd(),this, PIC_HP_WEB_DANGER, rcTemp);
	((CRuning *)pControlBase)->SetBitmap(IDB_WEB_DANGER, 4);
	((CRuning *)pControlBase)->SetRun(false, rand() % 4);
	m_vecControl.push_back(pControlBase);

	nXStartButton = 430;
	nYStartButton = 456;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   400, nYStartButton   20);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_WEB_DANGER, rcTemp, TEXT("网络威胁较低,您可以安全上网"), Color(56, 56, 56), TEXT("微软雅黑"), 14, FontStyleRegular);
	m_vecControl.push_back(pControlBase);	

	nXStartButton = 206;
	nYStartButton = 494;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   170, nYStartButton   16);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_VIRUS, rcTemp, TEXT("6,723,172 ( -1.15 % )"), Color(122, 122, 122), TEXT("微软雅黑"), 12, FontStyleRegular);
	((CStaticText *)pControlBase)->SetBitmap(IDB_HP_VIRUS);
	((CStaticText *)pControlBase)->SetMarkText(TEXT("( -1.15 % )"), Color(40, 181, 0));
	m_vecControl.push_back(pControlBase);	

	nXStartButton = 384;
	nYStartButton = 494;
	rcTemp.SetRect(nXStartButton, nYStartButton, nXStartButton   170, nYStartButton   16);
	pControlBase = new CStaticText(GetSafeHwnd(), this, TEXT_HP_WEB_SIT, rcTemp, TEXT("192,123,123 (  10.15 % )"), Color(122, 122, 122), TEXT("微软雅黑"), 12, FontStyleRegular);
	((CStaticText *)pControlBase)->SetBitmap(IDB_WEB_SIT);
	((CStaticText *)pControlBase)->SetMarkText(TEXT("(  10.15 % )"), Color(250, 128, 10));
	m_vecControl.push_back(pControlBase);		
}

void CQQPCMgrDlg::OnSize(CRect rcClient)
{
	
}

HCURSOR CQQPCMgrDlg::OnQueryDragIcon()
{
	return static_cast<HCURSOR>(m_hIcon);
}

LRESULT CQQPCMgrDlg::OnMessage(UINT	uID, UINT Msg, WPARAM wParam, LPARAM lParam)
{
	if(uID == TAB)
	{
		if(Msg == BUTTOM_DOWN)
		{
			if(1 == wParam)
			{
				
			}
		}
	}
	else if(uID == BT_SKIN)
	{
		if(Msg == BUTTOM_UP)
		{
			CControlBase * pControlBase = GetControl(BT_SKIN);
			if(pControlBase)
			{
				CDlgSkin *pDlgSkin = new CDlgSkin;
				CRect rc = pControlBase->GetRect();
				rc.OffsetRect(-95, rc.Height());
				ClientToScreen(&rc);
				pDlgSkin->Create(this, rc, WM_SKIN, IDB_SKIN_BKG, enBMImage);
				pDlgSkin->ShowWindow(SW_SHOW);
			}
		}
	}
	else if(uID == BT_MENU)
	{
		if(Msg == BUTTOM_UP)
		{
			CControlBase * pControlBase = GetControl(BT_MENU);
			if(pControlBase)
			{
				CMenuEx *pMenuEx = new CMenuEx( TEXT("微软雅黑"), 12);
				CPoint point;
				CRect rc = pControlBase->GetRect();
				point.SetPoint(rc.left   rc.Width() / 2, rc.bottom);
				ClientToScreen(&point);
				pMenuEx->Create(this, point, WM_MIAN_MENU, IDB_MENUEX_BACK, 30);
				pMenuEx->AddMenu(TEXT("设置中心"), MENU_MAIN_SETING);
				pMenuEx->AddMenu(TEXT("检查更新"), MENU_MAIN_UPDATE, IDB_MENU_UPDATE);
				pMenuEx->AddSeparator();
				pMenuEx->AddMenu(TEXT("管家论坛"), MENU_MAIN_BBS, IDB_MENU_BBS);
				pMenuEx->AddMenu(TEXT("帮助"), MENU_MAIN_HELP);
				pMenuEx->AddMenu(TEXT("关于"), MENU_MAIN_ABOUT);
				pMenuEx->ShowWindow(SW_SHOW);
			}
		}
	}
	else if(uID == BT_ALL_DETECT)
	{
		if(Msg == BUTTOM_UP)
		{
			//开始扫描
			StartCan(0);
		}
	}
	else if(uID == BT_CANCEL_PROGRESS)
	{
		if(Msg == BUTTOM_UP)
		{
			//取消扫描
			StartCan(1);
		}
	}
	else if(uID == BT_RESCAN)
	{
		if(Msg == BUTTOM_UP)
		{
			//重新扫描
			StartCan(0);
		}
	}
	else if(uID == BT_RETURN)
	{
		if(Msg == BUTTOM_UP)
		{
			//返回
			StartCan(3);
		}
	}

	return 0;
}

// 换肤
LRESULT CQQPCMgrDlg::OnMessageSkin(WPARAM wParam, LPARAM lParam)
{
	if(MSG_CLOSE == wParam)
	{

	}
	else if(MSG_SKIN == wParam)
	{
		SkinInfo *pSkinInfo = (SkinInfo *)lParam;
		if(pSkinInfo != NULL)
		{
			if(pSkinInfo->nType == 1)
			{
				Color &clr = pSkinInfo->clr;
				COLORREF crlBack = RGB(clr.GetRed(), clr.GetGreen(), clr.GetBlue());
				DrawBackground(crlBack);
			}
			else if(pSkinInfo->nType == 0)
			{
				LoadImage(IDB_SKIN_PIC_0   pSkinInfo->uIndex);
			}
		}
	}
	else if(MSG_SELECT_SKIN == wParam)
	{		
 		CFileDialog DlgFile(TRUE,NULL,NULL, OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY ,
 			TEXT("皮肤主题(*.bmp;*.png;*.jpg;*.jpeg)|*.bmp;*.png;*.jpg;*.jpeg||"),this, 0, 0);
 		DlgFile.m_ofn.nFilterIndex=1;
 		DlgFile.m_ofn.hwndOwner=m_hWnd;
 		DlgFile.m_ofn.lStructSize=sizeof(OPENFILENAME);
 		DlgFile.m_ofn.lpstrTitle=TEXT("打开");
 		DlgFile.m_ofn.nMaxFile=MAX_PATH;
 		if(DlgFile.DoModal() == IDOK)
 		{
 			CString strFileName = DlgFile.GetPathName();
 			CString strFileType = strFileName.Right(3);
 			if (0 == strFileType.CompareNoCase(TEXT("bmp")) || 0 == strFileType.CompareNoCase(TEXT("jpg")) || 0 == strFileType.CompareNoCase(TEXT("png")))
 			{
 				LoadImage(strFileName);	
 			}
 		}
	}

	return 0;
}

// 主菜单
LRESULT CQQPCMgrDlg::OnMessageMainMenu(WPARAM wParam, LPARAM lParam)
{
	tagMenuInfo *pMenuInfo = (tagMenuInfo *)lParam;
	if(wParam == BUTTOM_UP)
	{
		CString str;
		str.Format(TEXT("菜单 %d"), pMenuInfo->uMenuID);
		MessageBox(str, TEXT("菜单"));
	}

	delete pMenuInfo;

	return 0;
}

// 扫描
void CQQPCMgrDlg::StartCan(int nType)
{
	// 开始扫描
	if(nType == 0)
	{
		m_nScore = 100;
		m_nProgress = 0;

		//开始检查
		CControlBase * pControlBase = SetControlVisible(BT_ALL_DETECT, FALSE);
		if(pControlBase)
		{
			SetControlVisible(BT_RESCAN, FALSE);
			SetControlVisible(BT_RETURN, FALSE);
			SetControlVisible(TEXT_HP_SCORE, FALSE);
			SetControlVisible(TEXT_HP_SCORE_TIP, FALSE);
			SetControlVisible(PIC_HP_SCAN_FINISH_SCORE, FALSE);

			SetControlVisible(PIC_HP_WEB_DANGER, FALSE);
			SetControlVisible(TEXT_HP_WEB_DANGER, FALSE);
			SetControlVisible(TEXT_HP_VIRUS, FALSE);
			SetControlVisible(TEXT_HP_WEB_SIT, FALSE);

			pControlBase = GetControl(PIC_HP_SCAN_STATUS);
			if(pControlBase)
			{
				((CRuning *)pControlBase)->SetRun(false, 1);
			}

			pControlBase = SetControlVisible(PIC_HP_SCAN_SCORE, TRUE);
			if(pControlBase)
			{
				((CImageString *)pControlBase)->SetTitle(m_nScore);
			}

			pControlBase = SetControlVisible(PIC_HP_SCAN_RUNING, TRUE);
			if(pControlBase)
			{
				((CRuning *)pControlBase)->SetRun(true);
			}

			SetControlVisible(TEXT_HP_PROGRESS_TIP, TRUE);


			pControlBase = SetControlVisible(PRO_HP_PROGRESS, TRUE);
			if(pControlBase)
			{
				((CProgress *)pControlBase)->SetProgress(m_nProgress);
			}
			SetControlVisible(BT_CANCEL_PROGRESS, TRUE);
			SetControlVisible(LINE_SCANING, TRUE);	
			pControlBase = SetControlVisible(TEXT_HP_SCANING_TIP, TRUE);
			if(pControlBase)
			{
				((CStaticText *)pControlBase)->SetTitle(TEXT("正在扫描:"));
			}

			//启动定时器
			m_uTimerTest = CTimer::SetTimer(1000);
		}
	}
	else if(nType == 1)
	{
		CTimer::KillTimer(m_uTimerTest);
		m_uTimerTest = -1;

		CControlBase * pControlBase = SetControlVisible(BT_CANCEL_PROGRESS, FALSE);
		if(pControlBase)
		{
			SetControlVisible(BT_RESCAN, TRUE);
			SetControlVisible(BT_RETURN, TRUE);
			pControlBase = SetControlVisible(TEXT_HP_SCORE, TRUE);
			if(pControlBase)
			{
				((CStaticText *)pControlBase)->SetTitle(TEXT("本次体检被取消"));
			}

			CControlBase * pControlBase = SetControlVisible(TEXT_HP_SCORE_TIP, TRUE);
			if(pControlBase)
			{
				CString strMark, strTitle;
				strMark.Format(TEXT("%d"), rand() % 10);
				strTitle.Format(TEXT("发现%s项可优化项,请立即优化"), strMark);
				((CStaticText *)pControlBase)->SetMarkText(strTitle, strMark);
			}

			pControlBase = SetControlVisible(PIC_HP_SCAN_FINISH_SCORE, FALSE);


			pControlBase = GetControl(PIC_HP_SCAN_STATUS);
			if(pControlBase)
			{
				((CRuning *)pControlBase)->SetRun(false, 3 * (1   (rand() % 3)));
			}

			pControlBase = SetControlVisible(PIC_HP_SCAN_SCORE, FALSE);


			pControlBase = SetControlVisible(PIC_HP_SCAN_RUNING, FALSE);
			if(pControlBase)
			{
				((CRuning *)pControlBase)->SetRun(false);
			}

			SetControlVisible(TEXT_HP_PROGRESS_TIP, FALSE);
			SetControlVisible(PRO_HP_PROGRESS, FALSE);
			SetControlVisible(TEXT_HP_SCANING_TIP, FALSE);
		}
	}
	else if(nType == 2)
	{
		CTimer::KillTimer(m_uTimerTest);
		m_uTimerTest = -1;

		CControlBase * pControlBase = SetControlVisible(TEXT_HP_SCORE_TIP, TRUE);
		if(pControlBase)
		{
			CString strMark, strTitle;
			strMark.Format(TEXT("%d"), rand() % 50);
			strTitle.Format(TEXT("发现%s项可优化项,请立即优化"), strMark);
			((CStaticText *)pControlBase)->SetMarkText(strTitle, strMark);
		}
		
		SetControlVisible(BT_CANCEL_PROGRESS, FALSE);
		pControlBase = SetControlVisible(TEXT_HP_SCORE, TRUE);
		if(pControlBase)
		{
			((CStaticText *)pControlBase)->SetTitle(TEXT("本次体检得分"));
		}
		SetControlVisible(BT_RESCAN, TRUE);
		SetControlVisible(BT_RETURN, TRUE);

		pControlBase = SetControlVisible(PIC_HP_SCAN_FINISH_SCORE, TRUE);
		if(pControlBase)
		{
			((CImageString *)pControlBase)->SetTitle(m_nScore);
		}


		pControlBase = GetControl(PIC_HP_SCAN_STATUS);
		if(pControlBase)
		{
			((CRuning *)pControlBase)->SetRun(false, 3 * (1   (rand() % 3)));
		}

		pControlBase = SetControlVisible(PIC_HP_SCAN_SCORE, FALSE);


		pControlBase = SetControlVisible(PIC_HP_SCAN_RUNING, FALSE);
		if(pControlBase)
		{
			((CRuning *)pControlBase)->SetRun(false);
		}

		SetControlVisible(TEXT_HP_PROGRESS_TIP, FALSE);
		SetControlVisible(PRO_HP_PROGRESS, FALSE);
		SetControlVisible(TEXT_HP_SCANING_TIP, FALSE);
	}
	else if(nType == 3)
	{
		SetControlVisible(BT_RESCAN, FALSE);
		SetControlVisible(BT_RETURN, FALSE);
		SetControlVisible(LINE_SCANING, FALSE);
		SetControlVisible(BT_ALL_DETECT, TRUE);
		SetControlVisible(TEXT_HP_SCORE_TIP, TRUE);
		SetControlVisible(PIC_HP_SCAN_FINISH_SCORE, TRUE);

		SetControlVisible(PIC_HP_WEB_DANGER, TRUE);
		SetControlVisible(TEXT_HP_WEB_DANGER, TRUE);
		SetControlVisible(TEXT_HP_VIRUS, TRUE);
		SetControlVisible(TEXT_HP_WEB_SIT, TRUE);

		CControlBase * pControlBase = GetControl(TEXT_HP_SCORE);
		if(pControlBase)
		{
			((CStaticText *)pControlBase)->SetTitle(TEXT("上次体检得分"));
		}
		pControlBase = GetControl(TEXT_HP_SCORE_TIP);
		if(pControlBase)
		{
			((CStaticText *)pControlBase)->SetMarkText(TEXT("全面检查电脑和QQ帐号可能存在的风险"), TEXT(""));
		}
	}
}

void CQQPCMgrDlg::OnTimer(UINT uTimerID)
{
	if(m_uTimerTest == uTimerID)
	{
		if(m_nScore != 0)
		{
			m_nScore -= rand() % 3;
			if(m_nScore < 0)
			{
				m_nScore = 0;
			}
		}
		CControlBase * pControlBase = GetControl(PIC_HP_SCAN_SCORE);
		if(pControlBase)
		{
			((CImageString *)pControlBase)->SetTitle(m_nScore);
		}

		if(m_nProgress != 100)
		{
			m_nProgress  = rand() % 10;
			if(m_nProgress >= 100)
			{
				m_nProgress = 100;
				StartCan(2);
			}
		}

		pControlBase = GetControl(PRO_HP_PROGRESS);
		if(pControlBase)
		{
			((CProgress *)pControlBase)->SetProgress(m_nProgress);
		}
		
		pControlBase = GetControl(TEXT_HP_SCANING_TIP);
		if(pControlBase)
		{
			CString str;
			str.Format(TEXT("正在扫描:什么什么的什么, 进度为%d"), m_nProgress);
			((CStaticText *)pControlBase)->SetTitle(str);
		}
	}
	else if(m_uTimerTestWeb == uTimerID)
	{
		m_nWebSit  = rand() % 20;
		m_nVirus  = rand() % 20;

		CString str;
		CString strTemp;
		strTemp.Format(TEXT("( -1.%02d%% )"), rand() % 20);
		str.Format(TEXT("%s %s"), DecimalFormat(m_nVirus), strTemp);

		CControlBase * pControlBase = GetControl(TEXT_HP_VIRUS);
		if(pControlBase)
		{
			((CStaticText *)pControlBase)->SetTitleMarkText(str, strTemp);
		}

		strTemp.Format(TEXT("(  10.%02d%% )"), rand() % 20);
		str.Format(TEXT("%s %s"), DecimalFormat(m_nWebSit), strTemp);
		pControlBase = GetControl(TEXT_HP_WEB_SIT);
		if(pControlBase)
		{
			((CStaticText *)pControlBase)->SetTitleMarkText(str, strTemp);
		}
	}

	CDlgBase::OnTimer(uTimerID);
}


标签: QQ UI c MFC

实例下载地址

c++ 高仿QQ电脑管家界面 实例源码

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警