• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ OnDestroy函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中OnDestroy函数的典型用法代码示例。如果您正苦于以下问题:C++ OnDestroy函数的具体用法?C++ OnDestroy怎么用?C++ OnDestroy使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了OnDestroy函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: DeinitCommunication

//-----------------------------------------------------------------------------
/// Shutdown the LayerManager by detaching hooks and destroying instances.
/// \returns True if the LayerManager was destroyed fully and successfully.
//-----------------------------------------------------------------------------
bool DX12LayerManager::ShutdownLayerManager()
{
    bool bShutdownSuccess = false;

    DeinitCommunication();

    // Try to shutdown the DX12Interceptor if it was created during initialization.
    if (mInterceptor != nullptr)
    {
        if ((bShutdownSuccess = mInterceptor->Shutdown()) == false)
        {
            Log(logERROR, "Failed to clean up the DX12Interceptor during shutdown.\n");
        }

        SAFE_DELETE(mInterceptor);
    }

    bool bUnhookSuccessful = mModuleHook.UnhookInterceptor();

    if (!bUnhookSuccessful)
    {
        Log(logERROR, "Failed to unhook intercepted D3D12 entrypoints during shutdown.\n");
    }

    if ((bShutdownSuccess = OnDestroy(DX12_DEVICE, nullptr)) == false)
    {
        Log(logERROR, "Failed to destroy the DX12LayerManager during shutdown.\n");
    }

    return bShutdownSuccess;
}
开发者ID:PlusChie,项目名称:CodeXL,代码行数:35,代码来源:DX12LayerManager.cpp


示例2: switch

//ʵÏÖBaseWindowµÄ½Ó¿Ú
LRESULT CALLBACK CEqualizerWnd::WindowProc(HWND hwnd,UINT uMsg, WPARAM wParam,LPARAM lParam )
{
	POINT point = {0};
	switch (uMsg)
	{
	case WM_CREATE:
		OnCreate(uMsg,wParam,lParam);
		break;
	case WM_PAINT:
		OnPaint(uMsg,wParam,lParam);
		break;
	case WM_LBUTTONDOWN:
		point.x = LOWORD(lParam); 
		point.y = HIWORD(lParam); 
		OnLButtonDown(point);
		break;
	case WM_LBUTTONUP:
		point.x = LOWORD(lParam); 
		point.y = HIWORD(lParam); 
		OnLButtonUp(point);
		break;
	case WM_MOUSEMOVE:
		point.x = LOWORD(lParam); 
		point.y = HIWORD(lParam); 
		OnMouseMove(point);
		break;
	case WM_DESTROY:
		OnDestroy(uMsg,wParam,lParam);
		break;
	default:
		return DefWindowProc(hwnd, uMsg, wParam, lParam);
	}
	return 0;
}
开发者ID:sfengtfw,项目名称:sxplayer,代码行数:35,代码来源:EqualizerWnd.cpp


示例3: switch

LRESULT CFuncKeyWnd::DispatchEvent(
	HWND	hwnd,	// handle of window
	UINT	uMsg,	// message identifier
	WPARAM	wParam,	// first message parameter
	LPARAM	lParam 	// second message parameter
)
{
//	if( NULL == GetHwnd() ){
//		return 0L;
//	}

	int		i;
	WORD	wNotifyCode;
	WORD	wID;
	HWND	hwndCtl;
	switch ( uMsg ){

	case WM_TIMER:		return OnTimer( hwnd, uMsg, wParam, lParam );
	case WM_COMMAND:	return OnCommand( hwnd, uMsg, wParam, lParam );
	case WM_SIZE:		return OnSize( hwnd, uMsg, wParam, lParam );
	case WM_DESTROY:	return OnDestroy( hwnd, uMsg, wParam, lParam );

	default:
		return DefWindowProc( hwnd, uMsg, wParam, lParam );
	}
}
开发者ID:daisukekoba,项目名称:sakura-editor-trunk2,代码行数:26,代码来源:CFuncKeyWnd.cpp


示例4: switch

LRESULT WindowImplBase::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	LRESULT lRes = 0;
	BOOL bHandled = TRUE;
	switch (uMsg)
	{
	case WM_CREATE:			lRes = OnCreate(uMsg, wParam, lParam, bHandled); break;
	case WM_CLOSE:			lRes = OnClose(uMsg, wParam, lParam, bHandled); break;
	case WM_DESTROY:		lRes = OnDestroy(uMsg, wParam, lParam, bHandled); break;
#if defined(WIN32) && !defined(UNDER_CE)
	case WM_NCACTIVATE:		lRes = OnNcActivate(uMsg, wParam, lParam, bHandled); break;
	case WM_NCCALCSIZE:		lRes = OnNcCalcSize(uMsg, wParam, lParam, bHandled); break;
	case WM_NCPAINT:		lRes = OnNcPaint(uMsg, wParam, lParam, bHandled); break;
	case WM_NCHITTEST:		lRes = OnNcHitTest(uMsg, wParam, lParam, bHandled); break;
	case WM_GETMINMAXINFO:	lRes = OnGetMinMaxInfo(uMsg, wParam, lParam, bHandled); break;
	case WM_MOUSEWHEEL:		lRes = OnMouseWheel(uMsg, wParam, lParam, bHandled); break;
#endif
	case WM_SIZE:			lRes = OnSize(uMsg, wParam, lParam, bHandled); break;	
	case WM_SYSCOMMAND:		lRes = OnSysCommand(uMsg, wParam, lParam, bHandled); break;
	case WM_KEYDOWN:		lRes = OnKeyDown(uMsg, wParam, lParam, bHandled); break;
	case WM_KILLFOCUS:		lRes = OnKillFocus(uMsg, wParam, lParam, bHandled); break;
	case WM_SETFOCUS:		lRes = OnSetFocus(uMsg, wParam, lParam, bHandled); break;
	case WM_LBUTTONUP:		lRes = OnLButtonUp(uMsg, wParam, lParam, bHandled); break;
	case WM_LBUTTONDOWN:	lRes = OnLButtonDown(uMsg, wParam, lParam, bHandled); break;
	case WM_MOUSEMOVE:		lRes = OnMouseMove(uMsg, wParam, lParam, bHandled); break;
	default:				bHandled = FALSE; break;
	}
	if (bHandled) return lRes;

	lRes = HandleCustomMessage(uMsg, wParam, lParam, bHandled);
	if (bHandled) return lRes;

	if (paint_manager_.MessageHandler(uMsg, wParam, lParam, lRes)) return lRes;
	return CWindowWnd::HandleMessage(uMsg, wParam, lParam);
}
开发者ID:neartao,项目名称:WindowsPrinterDriver,代码行数:35,代码来源:win_impl_base.cpp


示例5: OnDestroy

bool CDirect3D11::StartUp()
{
	if( CreateDeviceAndSwapChain() )
	{
		//Do nothing
	}
	else
	{
		return false;
	}
	if( CreateRenderTargetView() )
	{
		//Do nothing
	}
	else
	{
		return false;
	}
	if ( CreateDepthStencilBufferAndView(true) )
	{
		m_pd3dDeviceContext->OMSetRenderTargets(1, &m_pd3dRenderTargetView, m_pd3dDepthStencilView);
	}
	else
	{
		return false;
	}
	if ( BuildScene() )
	{
		return true;
	}
	{
		OnDestroy();
		return false;
	}
}
开发者ID:xtozero,项目名称:BaseDirect3D11,代码行数:35,代码来源:Direct3D11.cpp


示例6: OnDestroy

void CMenuBase::Destroy (void)
{
    // Destroy the font
    m_pFont->Destroy ();

    OnDestroy();
}
开发者ID:Enucatl,项目名称:bombermaaan-x,代码行数:7,代码来源:CMenuBase.cpp


示例7: TaskWndProc

static LRESULT CALLBACK TaskWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) {
	switch (msg) {
		case WM_CREATE:
			OnCreate(hWnd);
			return 0;

		case WM_ERASEBKGND:
			return 0;

		case WM_PAINT:
			OnPaint(hWnd);
			return 0;

		case WM_TIMER:
			OnTimer(wParam);
			return 0;

		case WM_HOTKEY:
			return OnHotKey(HTaskWnd, wParam, lParam);

		case WM_DESTROY:
			OnDestroy();
			return 0;

		default:
			return DefWindowProc(hWnd, msg, wParam, lParam);
	}
}
开发者ID:ardy30,项目名称:tman,代码行数:28,代码来源:taskwnd.cpp


示例8: switch

LRESULT __stdcall COverlappedWindow::wndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{		
	switch (uMsg)
	{
	case WM_CREATE:
		onCreate();
		return 0;

	case WM_TIMER:
		onTimer();
		return 0;

	case WM_CLOSE:
		onClose();
		return 0;

	case WM_DESTROY:
		OnDestroy();
		return 0;

	case WM_PAINT:
		handlePaint();
		return 0;

	default:
		return ::DefWindowProc(handle, uMsg, wParam, lParam);
	}
}
开发者ID:alexeyqu,项目名称:mipt-alexeyqu,代码行数:28,代码来源:Ellipse.cpp


示例9: switch

LRESULT CMultiMenuUI::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	LRESULT lRes = 0;
	BOOL bHandled = TRUE;
	switch( uMsg )
	{
	case WM_CREATE:       
		lRes = OnCreate(uMsg, wParam, lParam, bHandled); 
		break;
	case WM_KILLFOCUS:       
		lRes = OnKillFocus(uMsg, wParam, lParam, bHandled); 
		break;
	case WM_DESTROY:
		lRes = OnDestroy(uMsg, wParam, lParam, bHandled);
	default:
		bHandled = FALSE;
		break;
	}
	if( bHandled ) 
		return lRes;
	if( m_pm.MessageHandler(uMsg, wParam, lParam, lRes) ) 
		return lRes;
	//应用层和 DUILIB 都不处理的消息交由系统默认处理 
	return CWindowWnd::HandleMessage(uMsg, wParam, lParam);
}
开发者ID:zsjtoby,项目名称:iume,代码行数:25,代码来源:MultiMenu.cpp


示例10: DlgProc

	/**
	 * ダイアログメッセージをメッセージを各関数に振り分けるだけです。
	 * @return TRUE(1)のときメッセージを処理
	 */
	INT_PTR DlgProc(
		HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam)
	{
		switch(Message){
		case WM_INITDIALOG:
			return OnInitDialog(hWnd, (HWND)wParam, lParam);
		case WM_DESTROY:
			return OnDestroy(hWnd);
		case WM_CLOSE:
			return OnClose(hWnd);
		case WM_COMMAND:
			return OnCommand(
				hWnd,
				(int)(LOWORD(wParam)),
				(HWND)(lParam),
				(UINT)HIWORD(wParam));
		case WM_NOTIFY_ICON:
			OnNotifyIcon(hWnd, wParam, lParam);
			return TRUE;
		case WM_TIMER:
			OnTimer(hWnd, wParam);
			return 0;
		}
		return FALSE;
	}
开发者ID:misohena,项目名称:usbrh_monitor,代码行数:29,代码来源:usbrh_monitor.cpp


示例11: Initialize

void Initialize()
{
	uv_timer_init(uv_default_loop(), &G_ThreadTimer);

	G_pGateCore = new class CGateCore();

	if (G_pGateCore->bInit() == false) {
		std::fprintf(stderr, "ERROR: Init fail!\n");
		std::exit(1);
		return;	
	}

	G_pListenSock = new class XSocket(300);
	if (!G_pListenSock->bListen(G_pGateCore->m_cGateServerAddr, G_pGateCore->m_iGateServerPort, WM_USER_ACCEPT))
	{
		OnDestroy();
		std::exit(1);
		return;
	}

	// 서버 검사용 타이머 시작 
	uv_timer_init(uv_default_loop(), &G_mmTimer0);
	uv_timer_start(&G_mmTimer0, &_TimerFunc, 0, 3000);
	PutLogList("(!) Gate Server Listening...");
}
开发者ID:mpapierski,项目名称:GateServer,代码行数:25,代码来源:Wmain.cpp


示例12: switch

LRESULT CEICFrameWindow::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
{

	LRESULT lRes = 0;
	BOOL bHandled = TRUE;
	switch( uMsg )
	{
	case WM_CREATE:        lRes = OnCreate(uMsg, wParam, lParam, bHandled); break;
	case WM_CLOSE:         lRes = OnClose(uMsg, wParam, lParam, bHandled); break;
	case WM_DESTROY:       lRes = OnDestroy(uMsg, wParam, lParam, bHandled); break;
#if defined(UI_BUILD_FOR_WIN32) && !defined(UI_BUILD_FOR_WINCE)
	case WM_NCACTIVATE:    lRes = OnNcActivate(uMsg, wParam, lParam, bHandled); break;
	case WM_NCCALCSIZE:    lRes = OnNcCalcSize(uMsg, wParam, lParam, bHandled); break;
	case WM_NCPAINT:       lRes = OnNcPaint(uMsg, wParam, lParam, bHandled); break;
	case WM_NCHITTEST:     lRes = OnNcHitTest(uMsg, wParam, lParam, bHandled); break;
	case WM_GETMINMAXINFO: lRes = OnGetMinMaxInfo(uMsg, wParam, lParam, bHandled); break;
#endif
	case WM_SIZE:          lRes = OnSize(uMsg, wParam, lParam, bHandled); break;	
	case WM_SYSCOMMAND:    lRes = OnSysCommand(uMsg, wParam, lParam, bHandled); break;
	default:
		bHandled = FALSE;
	}
	if( bHandled ) return lRes;
	if( m_pm.MessageHandler(uMsg, wParam, lParam, lRes) ) return lRes;
	return CWindowWnd::HandleMessage(uMsg, wParam, lParam);
}
开发者ID:achellies,项目名称:DUI_LIb,代码行数:26,代码来源:EIC.cpp


示例13: WndProcTimer

/*-------------------------------------------
  window procedure
---------------------------------------------*/
LRESULT CALLBACK WndProcTimer(HWND hwnd, UINT message,
	WPARAM wParam, LPARAM lParam)
{
	switch(message)
	{
		case WM_CREATE:
			OnCreate(hwnd);
			return 0;
		case WM_DESTROY:
			OnDestroy(hwnd);
			return 0;
		case WM_TIMER:
			switch(wParam)
			{
				case IDTIMER_TIMER:
					OnTimerTimer(hwnd);
					break;
			}
			return 0;
		// show dialog box
		case TIMERM_SHOWDLG:
			OnShowDialog(hwnd);
			return 0;
		// add item to tcmenu*.txt
		case TIMERM_REQUESTMENU:
			OnRequestMenu(hwnd, FALSE);
			return 0;
		// stop running timer
		case TIMERM_STOP:
			OnStopTimer(hwnd, (int)lParam);
			return 0;
	}
	return DefWindowProc(hwnd, message, wParam, lParam);
}
开发者ID:k-takata,项目名称:TClockLight,代码行数:37,代码来源:main.c


示例14: switch

int CMainFrame::MsgProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
  switch (uMsg)
  {
    case WM_COMMAND:
      OnCommand(wParam, lParam);
      break;
    case WM_CREATE:
      OnCreate(wParam, lParam);
      break;
    case WM_DESTROY:
      OnDestroy(wParam, lParam);
      break;
    case WM_SIZE:
      OnSize(wParam, lParam);
      return 1;
    case WM_TIMER:
      OnTimer(wParam, lParam);
      return 1;
    case WM_ERASEBKGND:
      return 0;
  }

  return DefFrameProc(m_hWnd, m_hClient, uMsg, wParam, lParam);
}
开发者ID:neuks,项目名称:Synaptics,代码行数:25,代码来源:CMainFrame.cpp


示例15: switch

LRESULT CWindow2::OnMessage(UINT message, WPARAM wParam, LPARAM lParam)
{
  LRESULT result;
  switch (message)
  {
    case WM_CREATE:
      if (!OnCreate((CREATESTRUCT *)lParam))
        return -1;
      break;
    case WM_COMMAND:
      if (OnCommand(wParam, lParam, result))
        return result;
      break;
    case WM_NOTIFY:
      if (OnNotify((UINT)wParam, (LPNMHDR) lParam, result))
        return result;
      break;
    case WM_DESTROY:
      OnDestroy();
      break;
    case WM_CLOSE:
      OnClose();
      return 0;
    case WM_SIZE:
      if (OnSize(wParam, LOWORD(lParam), HIWORD(lParam)))
        return 0;
  }
  return DefProc(message, wParam, lParam);
}
开发者ID:DXMonster,项目名称:android_external_lzma,代码行数:29,代码来源:Window2.cpp


示例16: KillFocus

void CPWL_Wnd::Destroy() {
  KillFocus();

  OnDestroy();

  if (m_bCreated) {
    for (int32_t i = m_aChildren.GetSize() - 1; i >= 0; i--) {
      if (CPWL_Wnd* pChild = m_aChildren[i]) {
        pChild->Destroy();
        delete pChild;
        pChild = nullptr;
      }
    }

    if (m_sPrivateParam.pParentWnd)
      m_sPrivateParam.pParentWnd->OnNotify(this, PNM_REMOVECHILD);
    m_bCreated = FALSE;
  }

  DestroyMsgControl();

  FXSYS_memset(&m_sPrivateParam, 0, sizeof(PWL_CREATEPARAM));
  m_aChildren.RemoveAll();
  m_pVScrollBar = nullptr;
}
开发者ID:endlessm,项目名称:chromium-browser,代码行数:25,代码来源:PWL_Wnd.cpp


示例17: assert

void
Window::reset()
{
  if (!IsDefined())
    return;

  assert(IsScreenInitialized());
  AssertThread();

#ifndef USE_GDI
  OnDestroy();

  width = 0;
  height = 0;
#else /* USE_GDI */
  ::DestroyWindow(hWnd);

  /* the OnDestroy() method must have cleared the variable by
     now */
  assert(prev_wndproc == NULL || hWnd == NULL);

  hWnd = NULL;
  prev_wndproc = NULL;
#endif /* USE_GDI */
}
开发者ID:damianob,项目名称:xcsoar,代码行数:25,代码来源:Window.cpp


示例18: OnDestroy

void UAbilityTask::AbilityEnded()
{
	if (!IsPendingKill())
	{
		OnDestroy(true);
	}
}
开发者ID:kidaa,项目名称:UnrealEngineVR,代码行数:7,代码来源:AbilityTask.cpp


示例19: switch

void CWindow::WinProc (unsigned int msg, WPARAM wParam, LPARAM lParam)
#endif
{
    switch (msg) 
    {
        case WM_CREATE:         OnCreate (m_hWnd, wParam, lParam);  break;
        case WM_INITDIALOG:     OnInitDialog (wParam, lParam);      break;
        case WM_ACTIVATEAPP:    OnActivateApp (wParam, lParam);     break;
        case WM_SIZE:           OnSize (wParam, lParam);            break;
        case WM_MOVE:           OnMove (wParam, lParam);            break;
        case WM_PAINT:          OnPaint (wParam, lParam);           break;
        case WM_KEYDOWN:        OnKeyDown (wParam, lParam);         break;
        case WM_KEYUP:          OnKeyUp (wParam, lParam);           break;
        case WM_COMMAND:        OnCommand (wParam, lParam);         break;
        case WM_SYSCOMMAND:     OnSysCommand (wParam, lParam);      break;
        case WM_CLOSE:          OnClose (wParam, lParam);           break;
        case WM_DESTROY:        OnDestroy (wParam, lParam);         break;
#ifndef WIN32
        case SDL_JOYAXISMOTION: OnJoystickAxis(wParam, lParam);		break;
        case SDL_JOYBUTTONDOWN:
        case SDL_JOYBUTTONUP:	OnJoystickButton(wParam, lParam);	break;
#endif
    }

#ifdef WIN32
        return DefWindowProc (m_hWnd, msg, wParam, lParam);
#else
        return;
#endif
}
开发者ID:Bombermaaan-R,项目名称:bombermaaan-r,代码行数:30,代码来源:CWindow.cpp


示例20: OnDestroy

void CDlgMsg::OnClose()
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	OnDestroy();
	CDialog::OnClose();
	delete this;
}
开发者ID:nykma,项目名称:ykt4sungard,代码行数:7,代码来源:DlgMsg.cpp



注:本文中的OnDestroy函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ OnDraw函数代码示例发布时间:2022-05-30
下一篇:
C++ OnCreate函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap