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

📄 solarsimpleconsole.h

📁 奇迹世界公用文件源代码,研究网络游戏的朋友可以研究下
💻 H
字号:
// Console.h: interface for the Console class.
// taiyo
//////////////////////////////////////////////////////////////////////

#ifndef __SOLAR_SIMPLE_CONSOLE_H__
#define __SOLAR_SIMPLE_CONSOLE_H__

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

////////////////////////////////////////////////////////////////////////////////////////
// Singleton栏肺 荤侩窍带瘤 傈开 函荐甫 荤侩窍带瘤 荤侩窍绰 螟俊辑 搬沥窍扼.!
////////////////////////////////////////////////////////////////////////////////////////


typedef VOID (*ConsoleKeyEventProc)( KEY_EVENT_RECORD * pEv );

typedef struct tagCONSOLE_DESC
{
	BOOL					bUsingConsoleInput;
	BOOL					bUsingRedirect;
	int						nLine;
	int						nColumn;
	int						nVisibleLine;
	ConsoleKeyEventProc		fn_KeyProc;

}CONSOLE_DESC;

class SolarSimpleConsole
{
	enum eConsoleParam { CONSOLE_LINE_NUM, CONSOLE_COLUMN_NUM, CONSOLE_VISIBLE_LINE_NUM };
public:
	SolarSimpleConsole();
	~SolarSimpleConsole();
	
	BOOL					Init( CONSOLE_DESC * pDesc );
	BOOL					Release();

	VOID					MessageLoop();
	VOID					ProcessConsole();

	VOID					SetConsoleParam( eConsoleParam param, int value );
	int						GetConsoleParam( eConsoleParam param );
	VOID					Print( char * szMsg, ... );

private:
	
	VOID					_redirectToConsole();
	BOOL					m_bUsingConsoleInput;
	HANDLE					m_hStdOut;
	HANDLE					m_hStdIn;
	DWORD					m_OldSaveMode;
	ConsoleKeyEventProc		m_fn_KeyEventProc;
};

#endif // __SOLAR_SIMPLE_CONSOLE_H__

⌨️ 快捷键说明

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