某天閒的蛋疼的時候翻《wpf揭秘》,看到裡面提到整個windows背景都是玻璃效果的窗體。
《wpf揭秘》提供了一段**,通過乙個類glasshelper封裝了pinvoke過來的系統api。想看那段**的猛擊
這裡既然是系統api,當然就不只是wpf專用了。拆開了glasshelper,主要內容就是兩個pinvoke簽名:
dwmextendframeintoclientarea控制窗體的玻璃效果,dwmiscompositionenabled檢測系統的桌面組合功能是否開啟。margins是dwmextendframeintoclintarea需要的引數結構,表達的是視窗四周的邊框。實現全玻璃背景,其實就是將有玻璃效果的窗體邊框向內擴充套件,當margins足夠大之後,就全變成玻璃狀態了。
pinvoke簽名[structlayout(layoutkind.sequential)]
public
struct margins
[dllimport("dwmapi.dll", preservesig = false)]
static
extern
void dwmextendframeintoclientarea(intptr hwnd, ref margins margins);
[dllimport("dwmapi.dll", preservesig = false)]
static
extern
bool dwmiscompositionenabled();
所以,要在winform裡實現玻璃效果,只要
onload以及protected
override
void onload(eventargs e)
base.onload(e);
}
onpaintbackgroud通過上面的**,在重繪背景的時候清除原本要繪製的背景,將透明的窗體底層顯示出來。protected
override
void onpaintbackground(painteventargs e)
}
效果如下
circos使用記錄 win7
本來是想要做出來這種效果的圖,然後在乙個r語言群裡面問到用這個可以做出來 安裝安了很長時間,大概加除錯有三個小時,反正具體怎麼安裝我就不說了,推薦博文 然後安裝好之後進入命令列模式 perl v然後應該是下面的樣子,win10有點問題,我在win7上裝的 需要安裝的模組 config general...
再見Win7 記錄Win7系統的安裝
本人從事機器視覺開發,一直用win7系統。近日買了個膝上型電腦,惠普的暗夜精靈3plus,早聽說這個電腦不支援win7,但是我不信邪,偏要試試。從早上10點,收到電腦,到下午6點,各種嘗試,各種搜尋,最終得出乙個結論,真的不行。安裝不了win7.文章的附圖就是最後的狀態了,雖然能裝上,但是進系統就藍...
win7 下git初級使用
今天來了解下git的基本使用 之前已經搭建好git服務,現在就來學習下git的使用.1.檔案修改與提交 計算機開始選單欄開啟git bash 切換到版本庫目錄 例如 cd g www gitserverrepository 建立乙個新目錄最為第乙個專案目錄 mkdir mylove 然後切換到改目錄...