亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tapp.cpp

?? 現在很流行的傳送平臺
?? CPP
字號:
static char *tapp_id = 
	"@(#)Copyright (C) H.Shirouzu 1996-2001   tapp.cpp	Ver0.95";
/* ========================================================================
	Project  Name			: Win32 Lightweight  Class Library Test
	Module Name				: Application Frame Class
	Create					: 1996-06-01(Sat)
	Update					: 2001-12-06(Thu)
	Copyright				: H.Shirouzu
	Reference				: 
	======================================================================== */

#include "tlib.h"

TWin**		TApp::wndArray		= NULL;
int			TApp::wndCnt		= 0;
TWin*		TApp::preWnd		= NULL;
HINSTANCE	TApp::hI			= NULL;
char*		TApp::defaultClass	= "tapp";

HINSTANCE LoadCtl3d(void);

TApp::TApp(HINSTANCE _hI, LPSTR _cmdLine, int _nCmdShow)
{
	hI			= _hI;
	cmdLine		= _cmdLine;
	nCmdShow	= _nCmdShow;
	mainWnd		= NULL;

	::CoInitialize(NULL);
	hCtl3d = LoadCtl3d();
	::InitCommonControls();
}

TApp::~TApp()
{
	delete mainWnd;

	if (hCtl3d)
		::FreeLibrary(hCtl3d);
	::CoUninitialize();
}

int TApp::Run(void)
{
	MSG		msg;

	InitApp();
	InitWindow();

	while (::GetMessage(&msg, NULL, 0, 0))
	{
		if (PreProcMsg(&msg))
			continue;

		::TranslateMessage(&msg);
		::DispatchMessage(&msg);
	}

	return	msg.wParam;
}

BOOL TApp::PreProcMsg(MSG *msg)	// for TranslateAccel & IsDialogMessage
{
	for (HWND hWnd=msg->hwnd; hWnd != NULL; hWnd=::GetParent(hWnd))
	{
		TWin	*win = SearchWnd(hWnd);

		if (win != NULL)
			return	win->PreProcMsg(msg);
	}

	return	FALSE;
}

LRESULT CALLBACK TApp::WinProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	TWin *win = SearchWnd(hWnd);

	if (win)
		return	win->WinProc(uMsg, wParam, lParam);

	if ((win = preWnd) != NULL)
	{
		preWnd = NULL;
		AddWinByWnd(win, hWnd);
		return	win->WinProc(uMsg, wParam, lParam);
	}

	return	DefWindowProc(hWnd, uMsg, wParam, lParam);
}

void TApp::AddWin(TWin *win)
{
	preWnd = win;
}

void TApp::AddWinByWnd(TWin *win, HWND hWnd)
{
	win->hWnd = hWnd;
	AddWinSub(win);
}

void TApp::AddWinSub(TWin *win)
{
	if (SearchWnd(win->hWnd) != NULL)
		return;

#define BIG_ALLOC	100
	TWin **_wndArray = wndArray;

	if ((wndCnt % BIG_ALLOC) == 0)
		_wndArray = (TWin **)realloc(wndArray, sizeof(TWin *) * (wndCnt + BIG_ALLOC));

	if (_wndArray == NULL)
		return;

	(wndArray = _wndArray)[wndCnt++] = win;
	return;
}

void TApp::DelWin(TWin *win)
{
	int		index;

	if (SearchWndIndex(win, &index) != TRUE)
	{
		if (preWnd == win)
			preWnd = NULL;
		return;
	}

	memmove(wndArray + index, wndArray + index +1, sizeof(TWin *) * (--wndCnt - index));
//	wndArray = (TWin **)realloc(wndArray, sizeof(TWin *) * wndCnt);
}

BOOL TApp::InitApp(void)	// reference kwc
{
	WNDCLASS wc;

	memset(&wc, 0, sizeof(wc));
	wc.style			= (CS_BYTEALIGNCLIENT | CS_BYTEALIGNWINDOW | CS_DBLCLKS);
	wc.lpfnWndProc		= WinProc;
	wc.cbClsExtra 		= 0;
	wc.cbWndExtra		= 0;
	wc.hInstance		= hI;
	wc.hIcon			= NULL;
	wc.hCursor			= LoadCursor(NULL, IDC_ARROW);
	wc.hbrBackground	= NULL;
	wc.lpszMenuName		= NULL;
	wc.lpszClassName	= defaultClass;

	if (::FindWindow(defaultClass, NULL) == NULL)
	{
		if (::RegisterClass(&wc) == 0)
			return FALSE;
	}

	return	TRUE;
}

TWin* TApp::SearchWnd(HWND hWnd)	//偄偢傟偍偄偍偄俀暘扵嶕偵偱傕...
{
	for (int cnt=0; cnt < wndCnt; cnt++)
		if (wndArray[cnt]->hWnd == hWnd)
			return	wndArray[cnt];

	return	NULL;
}

BOOL TApp::SearchWndIndex(TWin *win, int *index)
{
	for (*index=0; *index < wndCnt; (*index)++)
		if (wndArray[*index] == win)
			return	TRUE;

	return	FALSE;
}

#if 0
IsXpManifest(void)
{
	static	BOOL	done = FALSE;
	static	BOOL	isXpManifest = FALSE;

	if (done)
		return	isXpManifest;

	done = TRUE;

	HMODULE		hComctl;
	char		path[MAX_PATH];

	if ((hComctl = ::GetModuleHandle("comctl32")) == NULL)
		return	isXpManifest = FALSE;

	if (::GetModuleFileName(hComctl, path, sizeof(path)) == 0)
		return	isXpManifest = FALSE;

	GetFileVersionInfo();
	VerQueryValue();
	
}
#endif

HINSTANCE LoadCtl3d(void)
{
	if (IsNewShell())
		return	NULL;

	HINSTANCE	hCtl3d;
	BOOL (WINAPI *Ctl3dRegister)(HANDLE);
	BOOL (WINAPI *Ctl3dAutoSubclass)(HANDLE);

	hCtl3d = ::LoadLibrary("ctl3d32.dll");
	Ctl3dRegister = (BOOL (WINAPI *)(HANDLE))::GetProcAddress(hCtl3d, "Ctl3dRegister");
	Ctl3dAutoSubclass = (BOOL (WINAPI *)(HANDLE))::GetProcAddress(hCtl3d, "Ctl3dAutoSubclass");

	if (Ctl3dRegister && Ctl3dAutoSubclass)
	{
		Ctl3dRegister(TApp::hI);
		Ctl3dAutoSubclass(TApp::hI);
	}

	return	hCtl3d;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品成a人| 国产精品美女久久久久av爽李琼| 一区二区三区免费看视频| 粉嫩蜜臀av国产精品网站| 日韩精品中文字幕在线一区| 丝袜亚洲精品中文字幕一区| 欧美日韩国产另类不卡| 亚洲二区视频在线| 欧美日韩视频专区在线播放| 亚洲va韩国va欧美va精品| 欧美私人免费视频| 亚洲一区中文日韩| 欧美唯美清纯偷拍| 亚洲123区在线观看| 欧美日韩久久久| 日韩精品每日更新| 欧美一区二区视频观看视频| 日韩av电影一区| 日韩亚洲欧美高清| 久久国产精品72免费观看| 欧美一区二区三区免费观看视频| 日本不卡免费在线视频| 日韩视频一区在线观看| 精品中文av资源站在线观看| 久久日韩精品一区二区五区| 国产91精品入口| 亚洲视频在线一区观看| 在线视频欧美精品| 亚洲va欧美va人人爽午夜| 日韩午夜激情视频| 国产精品自拍三区| 国产精品理伦片| 在线精品视频免费播放| 日韩电影在线看| 精品入口麻豆88视频| 国产91色综合久久免费分享| 亚洲免费视频中文字幕| 欧美日韩美少妇 | 国产人成亚洲第一网站在线播放 | 99精品久久免费看蜜臀剧情介绍| 亚洲码国产岛国毛片在线| 欧美日韩国产一级二级| 久久99久国产精品黄毛片色诱| 久久久久青草大香线综合精品| 不卡av电影在线播放| 亚洲女与黑人做爰| 欧美精品久久99久久在免费线 | 国产嫩草影院久久久久| 94-欧美-setu| 天堂一区二区在线| 欧美va在线播放| www.av精品| 婷婷六月综合网| 久久久.com| 色av一区二区| 另类的小说在线视频另类成人小视频在线| 久久色.com| 一区二区三区小说| 欧美一级一级性生活免费录像| 久久精品二区亚洲w码| 中文字幕一区视频| 91精品国产综合久久精品性色| 国产乱对白刺激视频不卡| √…a在线天堂一区| 欧美久久高跟鞋激| 国产精品一区二区三区四区| 一个色在线综合| 精品免费国产一区二区三区四区| 99re这里只有精品视频首页| 日韩av在线发布| 亚洲欧洲精品成人久久奇米网| 欧美高清视频一二三区| 成人福利视频网站| 日本怡春院一区二区| 中文字幕日韩一区| 精品国产亚洲一区二区三区在线观看| 91丝袜国产在线播放| 久久黄色级2电影| 一区二区三区日韩精品| 久久嫩草精品久久久久| 欧美日韩在线电影| 成人av综合一区| 久久精品国产一区二区| 一区二区在线免费观看| 久久久久久久久蜜桃| 欧美精品一二三| 91在线免费视频观看| 国产资源在线一区| 午夜欧美电影在线观看| 中文字幕一区二区三区在线不卡| 欧美岛国在线观看| 欧美色图激情小说| 99久久er热在这里只有精品15| 韩国精品一区二区| 丝袜美腿亚洲综合| 亚洲亚洲精品在线观看| 国产精品―色哟哟| 亚洲精品一区在线观看| 欧美日韩国产成人在线91| 97久久精品人人爽人人爽蜜臀| 国产一区二区不卡老阿姨| 青青草原综合久久大伊人精品优势 | 99这里只有精品| 国产一区二区三区四区五区入口| 偷拍日韩校园综合在线| 亚洲精品老司机| 国产精品国产馆在线真实露脸 | 日韩美女视频在线| 欧美老肥妇做.爰bbww| 日本丰满少妇一区二区三区| 成人精品视频一区| 国产成人免费在线观看不卡| 久久精品国产澳门| 日本不卡一二三| 午夜一区二区三区在线观看| 一区二区三区中文字幕| 亚洲天堂网中文字| 中文字幕 久热精品 视频在线| 2023国产精品视频| 日韩精品资源二区在线| 欧美一区二区三区爱爱| 欧美日韩高清影院| 欧美无人高清视频在线观看| 欧美亚洲国产一区二区三区| 色综合久久综合网欧美综合网| 不卡大黄网站免费看| 99热精品国产| av亚洲产国偷v产偷v自拍| 成人激情黄色小说| 播五月开心婷婷综合| 成人av在线电影| a美女胸又www黄视频久久| 99精品热视频| 色偷偷一区二区三区| 91久久精品国产91性色tv| 日本精品裸体写真集在线观看 | 亚洲免费高清视频在线| 日韩一区在线看| 综合激情网...| 一区二区三区欧美亚洲| 亚洲午夜在线观看视频在线| 亚洲国产精品天堂| 午夜私人影院久久久久| 日产精品久久久久久久性色| 蜜臀av在线播放一区二区三区| 免费人成黄页网站在线一区二区| 蜜臀久久久99精品久久久久久| 久久国产尿小便嘘嘘| 国产乱码精品1区2区3区| 国产成人免费视| 99久久99久久免费精品蜜臀| 一本大道久久a久久综合| 欧美色精品在线视频| 7777精品伊人久久久大香线蕉的 | 国产午夜精品在线观看| 国产精品无人区| 亚洲免费观看视频| 婷婷六月综合网| 国产精品自拍网站| 91色综合久久久久婷婷| 欧美日韩性生活| 亚洲精品一区二区三区福利| 亚洲国产高清在线观看视频| 亚洲三级在线免费观看| 亚洲成人激情av| 久久66热偷产精品| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 成人综合婷婷国产精品久久免费| 99视频在线精品| 欧美日本一道本在线视频| 精品美女在线播放| 国产精品传媒入口麻豆| 亚洲国产精品一区二区久久 | 丁香激情综合五月| 一本久久综合亚洲鲁鲁五月天| 欧美女孩性生活视频| 欧美精品一区二区三区四区| 中文字幕日韩av资源站| 视频精品一区二区| 国产精品99久久久久久宅男| 日本久久一区二区| 精品盗摄一区二区三区| 亚洲婷婷国产精品电影人久久| 日韩成人一级片| 成人黄色一级视频| 7878成人国产在线观看| 国产精品沙发午睡系列990531| 亚洲成人久久影院| 成人永久aaa| 91精品国产综合久久精品麻豆| 国产欧美一区在线| 亚洲成人www| 国产91富婆露脸刺激对白| 欧美日韩你懂的| 欧美激情一区三区| 日韩成人dvd| 91年精品国产| 久久人人超碰精品| 日韩中文字幕区一区有砖一区| 粉嫩一区二区三区性色av|