📄 page1.cpp
字号:
// Page1.cpp : implementation file
//
#include "stdafx.h"
#include "Page.h"
#include "Page1.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CPage1 property page
IMPLEMENT_DYNCREATE(CPage1, CPropertyPage)
CPage1::CPage1() : CPropertyPage(CPage1::IDD)
{
//{{AFX_DATA_INIT(CPage1)
m_bAutoStart = true;
m_nPenWidth = 3;
m_bMinimized =(::GetPrivateProfileInt("Set_SS","bMinimized",0,".\\Settings.ini")==0 ?false:true);
//}}AFX_DATA_INIT
pWnd=NULL;
m_PenColor=RGB(0,0,255);
m_nPenStyle=PS_SOLID;
}
CPage1::~CPage1()
{
}
void CPage1::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CPage1)
DDX_Control(pDX, IDC_HOTKEY2, m_hotkey2);
DDX_Control(pDX, IDC_HOTKEY1, m_hotkey);
DDX_Control(pDX, IDC_BUTTON_COLOR, m_btnColor);
DDX_Check(pDX, IDC_CHECK1_AUTOSTART, m_bAutoStart);
DDX_Text(pDX, IDC_EDIT_PENWIDTH, m_nPenWidth);
DDX_Check(pDX, IDC_CHECK_MINIMIZED, m_bMinimized);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CPage1, CPropertyPage)
//{{AFX_MSG_MAP(CPage1)
ON_WM_LBUTTONDOWN()
ON_BN_CLICKED(IDC_CHECK1_AUTOSTART, OnCheck1Autostart)
ON_BN_CLICKED(IDC_BUTTON_COLOR, OnButtonColor)
ON_BN_CLICKED(IDC_SETHOTKEY, OnSethotkey)
ON_BN_CLICKED(IDC_BUTTON_PENSTYLE, OnButtonPenstyle)
ON_COMMAND(IDM_PS_SOLID, OnPsSolid)
ON_COMMAND(IDM_DASHDOTDOT, OnDashdotdot)
ON_COMMAND(IDM_PS_DASHDOT, OnPsDashdot)
ON_COMMAND(IDM_PS_DOT, OnPsDot)
ON_COMMAND(IDM_PS_DASH, OnPsDash)
ON_BN_CLICKED(IDC_START, OnStart)
ON_BN_CLICKED(IDC_CHECK_MINIMIZED, OnCheckMinimized)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CPage1 message handlers
void CPage1::OnLButtonDown(UINT nFlags, CPoint point)
{
AfxGetMainWnd()->SendMessage(WM_NCLBUTTONDOWN,HTCAPTION,0);
CPropertyPage::OnLButtonDown(nFlags, point);
}
void CPage1::OnStart()
{
AfxGetMainWnd()->ShowWindow(SW_HIDE);
UpdateData(); //更新变量,以便在CMyWnd中使用
pWnd = new CMyWnd;
CRect rect(0, 0, GetSystemMetrics(SM_CXFULLSCREEN), GetSystemMetrics(SM_CXFULLSCREEN));
pWnd->CreateMyWnd("", rect);
pWnd->ShowWindow(SW_SHOW);
pWnd->SetWindowPos(&CWnd::wndTopMost,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE);
}
void CPage1::OnCheck1Autostart()
{
UpdateData();
}
void CPage1::OnButtonColor()
{
this->m_PenColor=m_btnColor.GetColor();
}
BOOL CPage1::OnInitDialog()
{
CPropertyPage::OnInitDialog();
m_btnColor.SetColor(m_PenColor);
WORD vKey=::GetPrivateProfileInt("HotKey_SS","vKey",0,".\\Settings.ini");
WORD sKey=::GetPrivateProfileInt("HotKey_SS","sKey",0,".\\Settings.ini");
m_hotkey.SetHotKey(vKey, sKey);
WORD vKey2=::GetPrivateProfileInt("HotKey_SS","vKey2",0,".\\Settings.ini");
WORD sKey2=::GetPrivateProfileInt("HotKey_SS","sKey2",0,".\\Settings.ini");
m_hotkey2.SetHotKey(vKey2, sKey2);
UpdateData(false);
SetDlgItemText(IDC_BUTTON_PENSTYLE,"PS_SOLID");
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CPage1::OnSethotkey()
{
UpdateData(TRUE);
WORD vKey, sKey;
m_hotkey.GetHotKey(vKey, sKey);
CString strVKey,strSKey;
strVKey.Format("%d",vKey);
strSKey.Format("%d",sKey);
::WritePrivateProfileString("HotKey_SS","vKey",strVKey,".\\Settings.ini"); //Start Stop
::WritePrivateProfileString("HotKey_SS","sKey",strSKey,".\\Settings.ini");
UINT fs = 0;
if (sKey & HOTKEYF_ALT)
{
fs |= MOD_ALT;
}
if (sKey & HOTKEYF_CONTROL)
{
fs |= MOD_CONTROL;
}
if (sKey & HOTKEYF_SHIFT)
{
fs |= MOD_SHIFT;
}
RegisterHotKey(AfxGetMainWnd()->m_hWnd, 401, fs, vKey);
/*-----------------------------------------------------------------------*/
m_hotkey2.GetHotKey(vKey, sKey);
strVKey.Format("%d",vKey);
strSKey.Format("%d",sKey);
::WritePrivateProfileString("HotKey_SS","vKey2",strVKey,".\\Settings.ini"); //Start Stop
::WritePrivateProfileString("HotKey_SS","sKey2",strSKey,".\\Settings.ini");
UINT fs2 = 0;
if (sKey & HOTKEYF_ALT)
{
fs2 |= MOD_ALT;
}
if (sKey & HOTKEYF_CONTROL)
{
fs2 |= MOD_CONTROL;
}
if (sKey & HOTKEYF_SHIFT)
{
fs2 |= MOD_SHIFT;
}
RegisterHotKey(AfxGetMainWnd()->m_hWnd, 402, fs2, vKey);
}
void CPage1::OnButtonPenstyle()
{
CPoint point;
::GetCursorPos(&point);
COfficeXPMenu m_menu;
m_menu.LoadMenu(IDR_MENU1);
m_menu.SetType(TYPE_XP);
// ClientToScreen(&point);
COfficeXPMenu *psub = (COfficeXPMenu *)m_menu.GetSubMenu(2);
psub->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x,point.y,this);
m_menu.DestroyMenu();
}
void CPage1::OnPsSolid()
{
m_nPenStyle=PS_SOLID;
SetDlgItemText(IDC_BUTTON_PENSTYLE,"PS_SOLID");
}
void CPage1::OnPsDash()
{
m_nPenStyle=PS_DASH;
SetDlgItemText(IDC_BUTTON_PENSTYLE,"PS_DASH");
}
void CPage1::OnPsDot()
{
m_nPenStyle=PS_DOT;
SetDlgItemText(IDC_BUTTON_PENSTYLE,"PS_DOT");
}
void CPage1::OnPsDashdot()
{
m_nPenStyle=PS_DASHDOT;
SetDlgItemText(IDC_BUTTON_PENSTYLE,"PS_DASHDOT");
}
void CPage1::OnDashdotdot()
{
SetDlgItemText(IDC_BUTTON_PENSTYLE,"PS_DASHDOTDOT");
m_nPenStyle=PS_DASHDOTDOT;
}
void CPage1::OnCheckMinimized()
{
UpdateData();
::WritePrivateProfileString("Set_SS","bMinimized",this->m_bMinimized? "1":"0",".\\Settings.ini");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -