Using Common File Dialogs as Modeless Views

Environment: VC6 SP3, NT4 SP5, Windows 98, MSIE 5.0

This application was implemented for exercise purposes only. However I hope that ideas enclosed in it can be useful since it is sometimes required to get a Common Dialog modeless. Each Common File Dialog window has its style changed during creation and then lives in its own thread (CThreadRunningDlg class). The class for starting threads and wrapping of these dialog windows in the creation thread is CChildView. CdlgFileBrowse class is a descendant of standard MFC CFileDialog class running in its own thread. It implements actual initialization of parent Common File Dialog window. Common File Dialog window is sub-classed to maintain file list size fit under NT (CWndFileBrowse class). Of partial interest are also: splitter which allows maximally two panes opened and toggles windows tiling between horizontal and vertical (CTwixSplitter class) and edit bar derived from CControlBar class (CEditBar class).

Downloads

Download demo project - 9 Kb
Download source - 24 Kb


Comments

  • Venture News : chanel Thought as Absolutely Essential On the market now

    Posted by incockDak on 03/29/2013 08:03am

    gucci-hottie has tested out the most up-to-date method - - how you can make a lot of money from nothing [url=http://growth-management.alachua.fl.us/comprehensive_planning/gucci.html]グッチ 財布[/url] Interesting questions on gucci have been answered and the reasons you would need to check out every statement on this story. [url=http://growth-management.alachua.fl.us/comprehensive_planning/saclongchamp.php]Sac longchamps[/url] EllZitLixXmb [url=http://running-nike0.seesaa.net/]ナイキランニング[/url]QkeDkwDtlHss [[url=http://free-nike-nikeo.seesaa.net/]nike free[/url]TdgCqdXdfUqk [url=http://xn--nike-ul4c5c5fyqb.seesaa.net/]スニーカーナイキ[/url]IkmMqdGxaPch [url=http://nikejapan0.seesaa.net/]ナイキスニーカー[/url]KvsCndVrvEux [url=http://nikesneakersjp.seesaa.net/]nike スニーカー[/url]ArkCiyLheKde [url=http://nikegolf00.seesaa.net/]ナイキ[/url]VcnQgaRywTsd [url=http://nikeshoes00.seesaa.net/]nike シューズ[/url]EbsAruRajCdd [url=http://sneaker-adidas-jp.seesaa.net/]スニーカー アディダス[/url]VrtMmePtoVvm

    Reply
  • Just stop Protesting And Initiate a personal adidas shoes Distribution campaign Instead

    Posted by expopmerm on 03/18/2013 01:54am

    Concise statement reveal the unquestionable information about nike shoes and precisely how it can certainly threaten you.|Quick guideline teaches you some of the inner workings of the nike shoes in addition to those things that you must do immediately.}[url=http://www.nikejapan.asia/]シューズナイキ[/url] The Secret For nike shoes [url=http://www.adidasjapan.biz/]アディダス シューズ[/url] The thing you do not fully understand about adidas shoes could be costing much more than you might think. Update-- gucci bags Will certainly Have A Vital role In Virtually Any Management [url=http://www.guccijp.asia/]gucci バッグ[/url] Advanced chloe bags Ebook Clearly shows The Simplest Way To Rule The chloe World [url=http://www.chloejp.biz/]財布 chloe[/url] The ways to discover all the details there is to know about chanel in eight quick steps. [url=http://www.chaneljp.biz/]chanel バッグ[/url] The best ways to comprehend all the details there is to find out relating to chanel in seven easy ways.A Fella who just ended up selling his nike shoes report for a few million dollars [url=http://www.adidasjapan.asia/]アディダス スニーカー[/url] A significant double sprain on nike shoes [url=http://www.nikejp.biz/]nike ランニング[/url] nike shoes Reproductions : A Perfect adidas shoes 'cheat' Which experts state Fools 98% of the customers

    Reply
  • Added fix for improved draw performance

    Posted by Legacy on 10/24/2003 12:00am

    Originally posted by: Gareth

    What a great article! I have a small fix though...

    BOOL CDlgFileBrowse::OnInitDialog()
    {
    CWnd* pParent = GetParent();

    VERIFY(::SetWindowLong(*pParent, GWL_STYLE, WS_CHILD | WS_CLIPCHILDREN));

    ...I've added the WS_CLIPCHILDREN. You'll notice this will fix any werid painting problems when passing other windows over the file dialog. Great article though...

    g :�)

    Reply
  • Nice. But is it possible to do it in a CPropertyPage instead?

    Posted by Legacy on 07/17/2003 12:00am

    Originally posted by: Tomas Rasmussen

    Very nice application. But I would like it to appear in a CPropertyPage instead. Anyone able to solve that one???

    Best regards

    Tomas Rasmussen

    Reply
  • Two panes

    Posted by Legacy on 05/12/2003 12:00am

    Originally posted by: Dragan M

    Select more than 15 files. Press Enter. File Open dlg is gone.

    Reply
  • Very cool--anyone know how to do this in .Net (C#)?

    Posted by Legacy on 07/09/2002 12:00am

    Originally posted by: Scott

    Very good job on this...do you know how to do the same thing in C#? I want to put a file open dialog on a tab page. Any ideas?
    Thanks for the great work!

    Reply
  • Not Bad

    Posted by Legacy on 06/14/2001 12:00am

    Originally posted by: Jim.Rong

    Not Bad!

    Reply
  • Neat, but could be better commented

    Posted by Legacy on 06/11/2001 12:00am

    Originally posted by: JohnE

    First impressions.... Nice little app with some useful concepts. Does what it says on the tin, but (and it's only a minor but)... would it have hurt to sprinkle a few more comments here & there?

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

Top White Papers and Webcasts

  • Live Event Date: December 11, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT Market pressures to move more quickly and develop innovative applications are forcing organizations to rethink how they develop and release applications. The combination of public clouds and physical back-end infrastructures are a means to get applications out faster. However, these hybrid solutions complicate DevOps adoption, with application delivery pipelines that span across complex hybrid cloud and non-cloud environments. Check out this …

  • CentreCorp is a fully integrated and diversified property management and real estate service company, specializing in the "shopping center" segment, and is one of the premier retail service providers in North America. Company executives travel a great deal, carrying a number of traveling laptops with critical current business data, and no easy way to back up to the network outside the office. Read this case study to learn how CentreCorp implemented a suite of business continuity services that included …

Most Popular Programming Stories

More for Developers

RSS Feeds