WPF設計 不規則窗體

2022-03-26 04:15:11 字數 1524 閱讀 8880

我們在工作中,經常會需要畫一些不規則的窗體,現在總結如下。

一、利用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實現。(當然注意設定透明屬性)

"

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

" />

三、利用windows的clip。

給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影象,將需要隔離在窗體之外的區域的畫素設定為白色或透明色,其他顏色的區域對應顯示出來的...