2017-03-08 61 views
0

我目前有3個非常相似但略有不同的mfc應用程序,它們通常會在Windows環境中作爲其工作流程和使用的一部分同時打開。我想將它們保存爲3個獨立的應用程序,但以某種方式將它們組合在一起,置於單個UI容器之下,以便爲用戶提供更多清晰度。適用於3種不同mfc應用程序的容器GUI

我到目前爲止考慮過使用命名管道將數據從兩個應用程序發送到第三個應用程序,後者負責繪製GUI(可能在最高GUI級別有3個不同的標籤頁,每個標籤頁各一個應用)。我從SergeWautier的this回覆中得到了這個想法。考慮到這樣做的可能性後,似乎有很多的工作涉及實現這一點。

是否有任何其他(可能更簡單)的方式來實現類似的東西?

+0

你是否總是需要同時運行全部3個,或者每個都解決問題而不需要另外兩個? – franji1

+0

@ franji1他們都解決了問題,而不需要另外兩個。但是,某種類型的用戶很可能會使用全部3個;我的目標是改善這種用戶的工作流程並整理他們的屏幕。 – Claudiu

+0

我一直在研究如何將三合一應用程序集成到一個應用程序中的可能性(例如MDI w/3視圖或帶有2個其他對話框的SDI),但這不是用例,所以忘記這個想法。 – franji1

回答

0

老答案

我在平均時間碰到TaskSpace工具,這是最接近我要找的。它是liteware並獲得全部功能(例如,保存特定的Tab鍵配置,這是我最感興趣的)需要購買許可證。真正酷的將是限制用戶除了3個應用程序之外添加任何其他窗口並且更好地控制頂級窗口的標籤標題。此時,爲TaskSpace編寫類似的工具將是理想的解決方案。

我也玩過tidytabs。這不完全是我想要的,因爲它不提供'包裝GUI',但我認爲這裏值得一提的是它可以幫助別人。

更新

我發現正是我在Window Tabifier尋找,這是開源的,我可以修改,以適應按照提供的CPOL Licence我的需要。寫得非常好的代碼。

+1

Code Project出版物沒有提及的是,它一般不起作用。有關詳細信息,請參閱[跨進程父/子或擁有者/擁有的窗口關係是否合法?](https://blogs.msdn.microsoft.com/oldnewthing/20130412-00/?p=4683)。 – IInspectable

+0

@IInspectable謝謝你的鏈接!這是一個有趣的閱讀,但我仍然不確定它'一般不工作'。它解決了現實世界的問題,它對我來說非常有效。也許我沒有足夠的知識去理解這個論點,儘管...... – Claudiu

+1

構建一個跨線程窗口層次意味着調用[AttachThreadInput](https://msdn.microsoft.com/en-us/library/windows/desktop/ms681956 .aspx)(系統在你背後做),這會導致各種錯綜複雜的情況。 [AttachThreadInput就像是採取兩個主線並將他們的資金彙集到一個聯合銀行賬戶中,雙方需要在場才能提取任何資金](https://blogs.msdn.microsoft.com/oldnewthing/20130619-00/例如,p = 4043)。 – IInspectable

相關問題