我們在工作中,經常會需要畫一些不規則的窗體,現在總結如下。
一、利用visualbrush實現。這依賴於visualbrush的特性,任何控制項可以作為畫刷,而畫刷又可以作為背景。
此種方法可以用於實現一些文字窗體等。(注意設定窗體的透明屬性)
例如:
"實現的效果:iconfonttest.window1
"xmlns="
"xmlns:x="
"xmlns:d="
"xmlns:mc="
"xmlns:local="
clr-namespace:iconfonttest
"mc:ignorable="
d" allowstransparency="
true
" windowstyle="
none
"windowstartuplocation="
centerscreen
"title="
window1
" height="
400" width="
600">
好好學習
二、使用透明背景的png實現。(當然注意設定透明屬性)
"三、利用windows的clip。wpfsharpwindow.mainwindow
"xmlns="
"xmlns:x="
"title="
mainwindow
" height="
412" width="
528"
allowstransparency="
true
" windowstyle="
none
" opacitymask="
white
" background="
transparent
">
"grid_mouseleftbuttondown
">
"fill
" source="
/wpfsharpwindow;component/cow.png
" />
給window的clip屬性賦path值。
在xaml中定義乙個path,如下:當然也可以在前台賦值。"hidden
" x:name="
clippath
"data="
m 55,100 a 50,50 0 1 1 100,60 a 110,95 0 0 1 200, 60 a 50,50 0 1 1 250,100 a 110,95 0 1 1 55,100 z
"/>賦值:
window1.clip = clippath.data;
四、新增border實現
以上的本質都是將窗體設定成透明然後新增不規則窗體。
WPF設計 不規則窗體
原文 wpf設計 不規則窗體 我們在工作中,經常會需要畫一些不規則的窗體,現在總結如下。一 利用visualbrush實現。這依賴於visualbrush的特性,任何控制項可以作為畫刷,而畫刷又可以作為背景。此種方法可以用於實現一些文字窗體等。注意設定窗體的透明屬性 例如 iconfonttest....
C 建立不規則窗體
要求 1 使得窗體或按鈕的形狀跟一致。效果圖 參考文件 修改或新增部分,已經用 此處為新增部分 標註,缺少則不能達到效果 using system using system.collections.generic using system.componentmodel using system.da...
QT實現不規則窗體
看到網上有很多不規則窗體的實現,效果很酷.於是使用qt也實現了乙個,qt的不規則窗體實現非常簡單,只需要設定乙個mask 遮掩 這個的格式可以使用png或bmp格式,我使用了png格式,預設窗體是矩形的,使用png影象,將需要隔離在窗體之外的區域的畫素設定為白色或透明色,其他顏色的區域對應顯示出來的...