⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dialogwindow.h

📁 虚拟打印机
💻 H
字号:
/* *  * dialogwindow.h *   Copyright (C) 2006 Michael H. Overlin   This program is free software; you can redistribute it and/or modify   it under the terms of the GNU General Public License as published by   the Free Software Foundation; either version 2 of the License, or   (at your option) any later version.   This program is distributed in the hope that it will be useful,   but WITHOUT ANY WARRANTY; without even the implied warranty of   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the   GNU General Public License for more details.   You should have received a copy of the GNU General Public License   along with this program; if not, write to the Free Software   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA      Contact at poster_printer@yahoo.com */#ifndef DIALOGWINDOW_H#define DIALOGWINDOW_H#include "utils.h"#include <windows.h>#include <vector>class DialogWindow {public:	DialogWindow(HINSTANCE hInst, IN WORD wTemplateID);	virtual ~DialogWindow();	BOOL DoCreateDialog(class Window* pw);	BOOL DoCreateDialog(HWND hwndParent);	INT_PTR DoModalDialog(HWND hwndParent);	// NOT RELIABLE, HAVE TO TAKE INTO ACCOUNT FONT CHOICE#if 0	void GetSizeFromTemplate(SIZE& sz) const;#endif	BOOL GetAutoDelete(void) const { return m_bAutoDelete; }	void SetAutoDelete(IN BOOL b) { m_bAutoDelete = b; }	// WINDOWS API	BOOL CheckDlgButton(int nIDButton, UINT nCheck) { return ::CheckDlgButton(m_hdlg, nIDButton, nCheck); }	BOOL DestroyWindow(void) { return ::DestroyWindow(m_hdlg); }	virtual BOOL EndDialog(INT_PTR nResult) { return ::EndDialog(m_hdlg, nResult); }	HWND GetDlgItem(int nIDDlgItem) const { return ::GetDlgItem(m_hdlg, nIDDlgItem); }	UINT GetDlgItemText(int nIDDlgItem, LPTSTR lptstrString, int nMaxCount) { return ::GetDlgItemText(m_hdlg, nIDDlgItem, lptstrString, nMaxCount); }	HMENU GetMenu(void) { return ::GetMenu(m_hdlg); }	LONG GetWindowLong(int nIndex) const { return ::GetWindowLong(m_hdlg, nIndex); }	BOOL GetWindowRect(OUT RECT& r) const { return ::GetWindowRect(m_hdlg, &r); }	UINT IsDlgButtonChecked(int nIDButton) const { return ::IsDlgButtonChecked(m_hdlg, nIDButton); }	BOOL IsDialogMessage(LPMSG lpMsg) { return ::IsDialogMessage(m_hdlg, lpMsg); }	BOOL IsWindow(void) const { return ::IsWindow(m_hdlg); }	BOOL KillTimer(UINT_PTR idTimer) { return ::KillTimer(m_hdlg, idTimer); }	BOOL PostMessage(UINT msg, WPARAM wParam, LPARAM lParam) { return ::PostMessage(m_hdlg, msg, wParam, lParam); }	LRESULT SendMessage(UINT msg, WPARAM wParam, LPARAM lParam) { return ::SendMessage(m_hdlg, msg, wParam, lParam); }	LRESULT SendDlgItemMessage(int nIDDlgItem, UINT msg, WPARAM wParam, LPARAM lParam) { return ::SendDlgItemMessage(m_hdlg, nIDDlgItem, msg, wParam, lParam); }	HWND SetActiveWindow(void) { return ::SetActiveWindow(m_hdlg); }	BOOL SetForegroundWindow(void) { return ::SetForegroundWindow(m_hdlg); }	UINT_PTR SetTimer(UINT_PTR idTimer, UINT ms) { return ::SetTimer(m_hdlg, idTimer, ms, NULL); }	BOOL SetWindowPos(HWND hwndInsertAfter, int x, int y, int cx, int cy, UINT uFlags) {		return ::SetWindowPos(m_hdlg, hwndInsertAfter, x, y, cx, cy, uFlags);	}	BOOL SetWindowText(LPCTSTR lptstr) { return ::SetWindowText(m_hdlg, lptstr); }	BOOL SetDlgItemText(int nIDDlgItem, LPCTSTR lptstr) { return ::SetDlgItemText(m_hdlg, nIDDlgItem, lptstr); }	BOOL ShowWindow(int nCmdShow) { return ::ShowWindow(m_hdlg, nCmdShow); }	// SHORT-HAND API	BOOL CenterWindowAboveParent(void);	BOOL EnableDlgItem(IN int nIDDlgItem, IN BOOL bEnable) { return ::EnableWindow(this->GetDlgItem(nIDDlgItem), bEnable); }	LONG GetWindowStyle(void) const { return this->GetWindowLong(GWL_STYLE); }	BOOL IsDlgItemEnabled(IN int nIDDlgItem) const { return ::IsWindowEnabled(this->GetDlgItem(nIDDlgItem)); }	void SetHasSystemMenu(IN BOOL b) ;	void SetWindowStyleAndRedraw(DWORD dwStyle) ;	BOOL SetWindowTopLeft(int x, int y) { return this->SetWindowPos(NULL, x, y, 0, 0, SWP_NOSIZE | SWP_NOZORDER); }	BOOL SetWindowZOrderToTop(void) { return this->SetWindowPos(HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_SHOWWINDOW); }	static BOOL TheirIsDialogMessage(::MSG& msg);protected:	inline HINSTANCE hinst(void) const { return m_hinst; }	inline HWND hdlg(void) const { return m_hdlg; }	inline HWND hwndParent(void) const { return GetParent(m_hdlg); }	virtual BOOL InitMsg(WPARAM wParam, LPARAM lParam);	virtual BOOL CommandMsg(WPARAM wParam, LPARAM lParam);	virtual BOOL CommonControlColorNotifyMsg(UINT msg, WPARAM wParam, LPARAM lParam);	virtual BOOL NotificationMsg(UINT msg, WPARAM wParam, LPARAM lParam);	virtual BOOL NotifyMsg(WPARAM wParam, LPARAM lParam);	virtual BOOL ScrollMsg(UINT msg, WPARAM wParam, LPARAM lParam);	virtual BOOL TimerMsg(WPARAM wParam, LPARAM lParam);	virtual BOOL DlgProc(UINT msg, WPARAM wParam, LPARAM lParam);private:	HINSTANCE m_hinst;	HWND m_hdlg;	WORD m_wTemplateID;	BOOL m_bAutoDelete;	static BOOL CALLBACK TheirDlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) ;};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -