日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

C# Winform 窗体美化(九、嵌入窗体)

發布時間:2025/3/11 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# Winform 窗体美化(九、嵌入窗体) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

九、嵌入窗體

還是關于 Winform 窗體的一些操作問題,這次是研究了一個嵌入窗體,這次學習純屬偶然,項目中確實沒遇到過這種需求。就是把別人的程序嵌入到自己的程序中,就像這樣:

這里我嵌入了測試顯示器的程序

這次學習得益于一片博客(引用一定要注明出處 ^_^):
http://www.cnblogs.com/bitzhuwei/archive/2012/05/24/SmileWei_EmbeddedApp.html

關于嵌入程序的資料,上面鏈接博客的作者寫的非常詳細了,而且也整理了相關的代碼,可以下載學習。

這里我自己也整理學習了一下,有需要可以下載。源碼下載

嵌入過程主要代碼

private void EmbedProcess(Process app, Control control) {//驗證進程和控件非空if (app == null || app.MainWindowHandle == IntPtr.Zero || control == null) return;try{//核心代碼:嵌入程序SetParent(app.MainWindowHandle, control.Handle);}catch (Exception) { }try{//移除嵌入的窗口的窗口標題欄SetWindowLong(new HandleRef(this, app.MainWindowHandle), GWL_STYLE, WS_VISIBLE);}catch (Exception) { }try{//將嵌入的窗口歐放置到合適位置,填滿寬高MoveWindow(app.MainWindowHandle, 0, 0, control.Width, control.Height, true);}catch (Exception) { } }

效果圖

這里可以看到嵌入程序的三個步驟:
1. 嵌入程序
2. 移除嵌入的窗口的窗口標題欄
3. 將嵌入的窗口歐放置到合適位置,填滿寬高

截圖感受一下:
1.嵌入程序

2.移除嵌入的窗口的窗口標題欄

3.將嵌入的窗口歐放置到合適位置,填滿寬高

疑問

最后還是有一些疑問沒有解決:
1. 焦點的問題;
2. 有些應用不能被嵌入;
3. 有些應用嵌入位置可能出現異常;

總結

以上是生活随笔為你收集整理的C# Winform 窗体美化(九、嵌入窗体)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。