2013-12-09 67 views
4

我不知道怎麼問所以這裏問題的程序來考慮如何編寫運行另一個GUI程序裏面

pic

因此,例如,當一些想法的圖片你運行我的「自定義啓動器」,它會顯示一個窗口,其中有一些按鈕可以指定值。當您點擊一個按鈕時,相應的程序將在右側的大面板中運行(在窗口模式下)。

這當然都是從用戶的角度來看的。他們只會看到他們想要運行的程序出現在該面板中。 「一個程序在另一個程序中運行」的實際實現可能與「

無關」。我自己的用例僅限於Windows桌面平臺,但是如果可以推廣它,那也不錯。

這實際上可行嗎?我可以編寫一個程序來運行面板中的另一個程序嗎?啓動的程序可能是其他人的,如MS繪圖或計算器。

+0

只有我能想到的方法會涉及到您編寫自定義顯示驅動程序..您可以擴展一點你想要實現的目標嗎?可能有一個更簡單的方法。 [即。爲什麼程序需要在一個面板內] –

+0

我想創建一個啓動應用程序,基本上有一個標誌在上面,實際的程序,它已被編程啓動在面板上運行。該程序可能是任意的。我沒有想到可能來自這個想法的任何有用的東西,但這個想法看起來很有趣。我的意思是,我*可以*只是在桌面上放置快捷方式,讓操作系統處理運行程序,但它缺少了標誌! – MxyL

+0

聽起來像你正在尋找的是遠程桌面服務,以前稱爲終端服務。 –

回答

3

只是對我的評論擴大上方,這裏是可以爲你工作的方法:假的吧 :)

當您啓動程序,攔截所有Windows消息的程序,控制它的上位置屏幕。這樣看起來好像被固定了,但實際上它仍然附着在正常的Windows桌面上。

下面是一些光讀數爲您:

Windows Event Hooks

的鉤是由一個應用程序可以截獲事件的機制, 諸如消息,鼠標操作和鍵擊。攔截特定類型事件的函數被稱爲鉤子程序。一個 掛鉤程序可以處理它接收到的每個事件,然後修改或丟棄該事件。

+0

沒有必要對窗口進行子類化。只需設置其位置並移除可調整大小的窗口樣式即可。如果您移動啓動器窗口,也可以移動啓動窗口。 –

+0

掛鉤非常有趣。我可以在其他想法中使用它們。感謝您的鏈接。 – MxyL

+0

@ Dan-o同意。沒有必要對窗口進行子類化。這可以從一個完全獨立的應用程序(啓動器)完成。 –

1

我會建議反對在商業應用程序,因爲要修改的軟件,你沒有自己的行爲 - 該軟件可以做出關於它的父窗口是什麼假設,但對於實驗還有的SetParent Win32函數。

相關問題