📄 mainfrm.h
字号:
// MainFrm.h : interface of the CMainFrame class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_MAINFRM_H__92CD4E02_BB94_4E9A_B0B0_ADBB1F13C430__INCLUDED_)
#define AFX_MAINFRM_H__92CD4E02_BB94_4E9A_B0B0_ADBB1F13C430__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#define WM_SOCKET_0 WM_USER + 0
#define WM_SOCKET_1 WM_USER + 1
#define WM_SOCKET_2 WM_USER + 2
#define WM_SOCKET_3 WM_USER + 3
#define WM_SOCKET_4 WM_USER + 4
#define WM_SOCKET_5 WM_USER + 5
#define FillModAttr(n, id, sock, msg, function) { \
mod[n].id = (id); \
mod[n].sock = (sock); \
mod[n].hwnd = m_view.GetSubWnd(n); \
mod[n].msg = (msg); \
mod[n].function = (function); \
}
class CMainFrame : public CFrameWindowImpl<CMainFrame>, public CUpdateUI<CMainFrame>,
public CMessageFilter, public CIdleHandler
{
public:
DECLARE_FRAME_WND_CLASS(NULL, IDR_MAINFRAME)
CConsoleView m_view;
CCommandBarCtrl m_CmdBar;
virtual BOOL PreTranslateMessage(MSG* pMsg);
virtual BOOL OnIdle();
BEGIN_UPDATE_UI_MAP(CMainFrame)
UPDATE_ELEMENT(ID_VIEW_TOOLBAR, UPDUI_MENUPOPUP)
UPDATE_ELEMENT(ID_VIEW_STATUS_BAR, UPDUI_MENUPOPUP)
UPDATE_ELEMENT(ID_MODULE_0, UPDUI_TOOLBAR)
UPDATE_ELEMENT(ID_MODULE_1, UPDUI_TOOLBAR)
UPDATE_ELEMENT(ID_MODULE_2, UPDUI_TOOLBAR)
UPDATE_ELEMENT(ID_MODULE_3, UPDUI_TOOLBAR)
UPDATE_ELEMENT(ID_MODULE_4, UPDUI_TOOLBAR)
UPDATE_ELEMENT(ID_MODULE_5, UPDUI_TOOLBAR)
END_UPDATE_UI_MAP()
BEGIN_MSG_MAP(CMainFrame)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
COMMAND_ID_HANDLER(ID_MODULE_0, OnModule0)
MESSAGE_HANDLER(WM_SOCKET_0, OnSocket0)
COMMAND_ID_HANDLER(ID_MODULE_1, OnModule1)
MESSAGE_HANDLER(WM_SOCKET_1, OnSocket1)
COMMAND_ID_HANDLER(ID_MODULE_2, OnModule2)
MESSAGE_HANDLER(WM_SOCKET_2, OnSocket2)
COMMAND_ID_HANDLER(ID_MODULE_3, OnModule3)
MESSAGE_HANDLER(WM_SOCKET_3, OnSocket3)
COMMAND_ID_HANDLER(ID_MODULE_4, OnModule4)
MESSAGE_HANDLER(WM_SOCKET_4, OnSocket4)
COMMAND_ID_HANDLER(ID_MODULE_5, OnModule5)
MESSAGE_HANDLER(WM_SOCKET_5, OnSocket5)
COMMAND_ID_HANDLER(ID_APP_EXIT, OnFileExit)
COMMAND_ID_HANDLER(ID_FILE_NEW, OnFileNew)
COMMAND_ID_HANDLER(ID_FILE_NEW_WINDOW, OnFileNewWindow)
COMMAND_ID_HANDLER(ID_VIEW_TOOLBAR, OnViewToolBar)
COMMAND_ID_HANDLER(ID_VIEW_STATUS_BAR, OnViewStatusBar)
COMMAND_ID_HANDLER(ID_APP_ABOUT, OnAppAbout)
COMMAND_RANGE_HANDLER(IDM_MODULE_0, IDM_MODULE_5, OnModuleSelect)
MESSAGE_HANDLER(WM_CONNECT_COMPLETE, OnConnOk)
MESSAGE_HANDLER(WM_CONNECT_TIMEOUT, OnConnTimeOut)
CHAIN_MSG_MAP(CUpdateUI<CMainFrame>)
CHAIN_MSG_MAP(CFrameWindowImpl<CMainFrame>)
REFLECT_NOTIFICATIONS()
END_MSG_MAP()
// Handler prototypes (uncomment arguments if needed):
// LRESULT MessageHandler(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
// LRESULT CommandHandler(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
// LRESULT NotifyHandler(int /*idCtrl*/, LPNMHDR /*pnmh*/, BOOL& /*bHandled*/)
LRESULT OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnDestroy(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnFileExit(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnFileNew(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnFileNewWindow(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnViewToolBar(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnViewStatusBar(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnAppAbout(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnConnOk(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnConnTimeOut(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnModuleSelect(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnModule0(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSocket0(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnModule1(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSocket1(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnModule2(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSocket2(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnModule3(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSocket3(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnModule4(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSocket4(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnModule5(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSocket5(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
private:
typedef struct
{
int id;
SOCKET sock;
HWND hwnd;
int msg;
int function;
} MODULE, *PMODULE;
MODULE mod[6];
REQUEST_CONNECT rc;
PWND_INIT_PARAM pwip;
bool connwait;
void OnSocketConnect(int nModuleId, WPARAM wParam);
LRESULT ModuleClick(int nModule);
LRESULT OnSocketNodify(int nModule, WPARAM wParam, LPARAM lParam);
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_MAINFRM_H__92CD4E02_BB94_4E9A_B0B0_ADBB1F13C430__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -