Remove close button from floating toolbar

The article 'Remove system menu from floating toolbar' by Sushil Saxena shows one way of removing the close button from a toolbar. However, it is not the neatest of solutions to the problem.

This is my solution: It does rely on a little dodge to get a runtime class for an internal MFC class, but apart from that...

First, add some code somewhere, proabably in the cpp file, to get at that class.



// bodge class so we can get at the runtime class for this docked window
// helper class (not defined in any MFC header file)
class CMiniDockFrameWnd
{
public:
	DECLARE_DYNAMIC(CMiniDockFrameWnd)
};

Secondly, in the OnSize handler (called every time bar is floated or docked, but not so often as a click) add



	// remove the close button on the parent
	CWnd *pParent = GetParent();
	if(pParent) pParent = pParent->GetParent();
	if(pParent != NULL && pParent->GetRuntimeClass() == RUNTIME_CLASS(CMiniDockFrameWnd)
		&& pParent->GetStyle() & WS_SYSMENU)
	{
		pParent->ModifyStyle(WS_SYSMENU, 0, 0);
	}

And your toolbar no longer has a close button.



Comments

  • Goal

    Posted by snareenactina on 11/06/2012 07:28pm

    The relevant parameter for assessing the U.S. labor market impacts of globalization is the volume of trade conducted with lower-wage trading partners (know in the jargon as less-developed countries, or LDCs for short). This paper uses the average of imports and exports from non-OECD countries (as OECD countries are generally rich, and trade with them will not necessarily follow the predicted patterns regarding the labor-intensity of imports and exports that drives the inequality-inducing effects of trade), non-OPEC countries (as oil is not generally thought to compete with U.S. production), and Turkey and Mexico (the two poorest OECD nations) for this parameter. imagemac Link to this comment: statesmen ihsaa krayenbuhl mcclellandii loco

    Reply
  • New one

    Posted by snareenactina on 11/02/2012 04:33pm

    Ruh roh Astro. These numbers oughtta be real sparkly a year from now. And don't think that a whole bunch of Democrat CongressCritters haven't noticed this little tidbit. Because they surely have. fatwire Why? Because you use less gas when the engine is turning slowly. The slower the engine turns, the fewer the number of explosions in the cylinders. And fewer explosions means less gas consumed. quest routine chan marmots gameshttp

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • 10 Rules that Make or Break Enterprise App Development Projects In today's app-driven world, application development is a top priority. Even so, 68% of enterprise application delivery projects fail. Designing and building applications that pay for themselves and adapt to future needs is incredibly difficult. Executing one successful project is lucky, but making it a repeatable process and strategic advantage? That's where the money is. With help from our most experienced project leads and software engineers, …

  • As everyone scrambles to protect customers and consumers from the Heartbleed virus, there will be a variety of mitigating solutions offered up to address this pesky bug. There are a variety of points within the data path where solutions could be put into place to mitigate this (and similar) vulnerabilities and customers must choose the most strategic point in the network at which to deploy their selected mitigation. Read this white paper to learn the ins and outs of mitigating the risk of Heartbleed and the …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds