📄 testdlgdlg.cpp
字号:
// TestDlgDlg.cpp : implementation file
//
#include "stdafx.h"
#include "TestDlg.h"
#include "TestDlgDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CTestDlgDlg dialog
CTestDlgDlg::CTestDlgDlg(CWnd* pParent /*=NULL*/)
: CDialog(CTestDlgDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CTestDlgDlg)
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
m_bmpBG.LoadBitmap(IDB_BG);
}
void CTestDlgDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CTestDlgDlg)
DDX_Control(pDX, IDC_BTN_OPTION, m_btnOption);
DDX_Control(pDX, IDC_BTN_TOOLS, m_btnTools);
DDX_Control(pDX, IDC_BTN_RADAR, m_btnRadar);
DDX_Control(pDX, IDC_BTN_NAVI, m_btnNavi);
DDX_Control(pDX, IDC_BTN_MPLAY, m_btnMPlay);
DDX_Control(pDX, IDC_BTN_IE, m_btnIE);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CTestDlgDlg, CDialog)
//{{AFX_MSG_MAP(CTestDlgDlg)
ON_WM_DESTROY()
ON_BN_CLICKED(IDC_BTN_NAVI, OnBtnNavi)
ON_BN_CLICKED(IDC_BTN_RADAR, OnBtnRadar)
ON_BN_CLICKED(IDC_BTN_MPLAY, OnBtnMplay)
ON_BN_CLICKED(IDC_BTN_IE, OnBtnIe)
ON_BN_CLICKED(IDC_BTN_TOOLS, OnBtnTools)
ON_BN_CLICKED(IDC_BTN_OPTION, OnBtnOption)
ON_WM_PAINT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTestDlgDlg message handlers
BOOL CTestDlgDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
m_dcMem.CreateCompatibleDC(NULL);
BITMAP bitMap;
m_bmpBG.GetBitmap(&bitMap);
m_dcMem.SelectObject(&m_bmpBG);
HWND lpClassName;
lpClassName = ::FindWindow(TEXT("HHTaskBar"), NULL);
::ShowWindow(lpClassName, SW_HIDE);
CRect rcWorkArea;
int screenx = GetSystemMetrics(SM_CXSCREEN);
int screeny = GetSystemMetrics(SM_CYSCREEN);
rcWorkArea.left = 0;
rcWorkArea.right = screenx;
rcWorkArea.top = 0;
rcWorkArea.bottom = screeny;
::SystemParametersInfo(SPI_SETWORKAREA, 0, &rcWorkArea, SPIF_SENDCHANGE);
this->SetWindowPos(NULL, rcWorkArea.left, rcWorkArea.top,
rcWorkArea.Width(), rcWorkArea.Height(), SWP_SHOWWINDOW);
if (screenx != 800 || screeny != 480)
{
AfxMessageBox(TEXT("本软件只支持800×480液晶屏"), MB_OK);
SendMessage(WM_CLOSE);
}
m_btnNavi.LoadBitmaps(IDB_NAVI1, IDB_NAVI2);
m_btnRadar.LoadBitmaps(IDB_RADAR1, IDB_RADAR2);
m_btnMPlay.LoadBitmaps(IDB_MPLAY1, IDB_MPLAY2);
m_btnIE.LoadBitmaps(IDB_IE1, IDB_IE2);
m_btnTools.LoadBitmaps(IDB_TOOLS1, IDB_TOOLS2);
m_btnOption.LoadBitmaps(IDB_OPTION1, IDB_OPTION2);
m_btnNavi.MoveWindow(60, 90, 160, 100);
m_btnRadar.MoveWindow(320, 90, 160, 100);
m_btnMPlay.MoveWindow(580, 90, 160, 100);
m_btnIE.MoveWindow(60, 280, 160, 100);
m_btnTools.MoveWindow(320, 280, 160, 100);
m_btnOption.MoveWindow(580, 280, 160, 100);
GetDlgItem(IDOK)->MoveWindow(700, 450, 80, 20);
return TRUE; // return TRUE unless you set the focus to a control
}
void CTestDlgDlg::OnDestroy()
{
CDialog::OnDestroy();
m_bmpBG.DeleteObject();
HWND lpClassName;
lpClassName = ::FindWindow(TEXT("HHTaskBar"), NULL);
::ShowWindow(lpClassName, SW_RESTORE);
}
BOOL CTestDlgDlg::WinExec(LPCTSTR strPath)
{
PROCESS_INFORMATION processInfo;
if(!CreateProcess(strPath,NULL,NULL,NULL,NULL,
CREATE_NEW_CONSOLE,NULL,NULL,NULL,
&processInfo))
{
return FALSE;
}
CloseHandle(processInfo.hThread);
CloseHandle(processInfo.hProcess);
return TRUE;
}
void CTestDlgDlg::OnBtnNavi()
{
}
void CTestDlgDlg::OnBtnRadar()
{
}
void CTestDlgDlg::OnBtnMplay()
{
// TODO: Add your control notification handler code here
}
void CTestDlgDlg::OnBtnIe()
{
WinExec(L"windows/iexplore.exe");
}
void CTestDlgDlg::OnBtnTools()
{
// TODO: Add your control notification handler code here
}
void CTestDlgDlg::OnBtnOption()
{
// TODO: Add your control notification handler code here
}
void CTestDlgDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
CRect rect;
GetClientRect(&rect);
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&m_dcMem,0,0, rect.Width(), rect.Height(),SRCCOPY);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -