自定義形狀窗體

2021-06-05 08:05:09 字數 1147 閱讀 9807

在用vb程式設計中,有時,我們需要使用乙個跟不規則背景有相同形狀的不規則窗體,怎麼辦呢?

首先,我們需要設定無邊框窗體,

即:borderstyle=0

其次,把背景覆蓋不住的窗體背景設定成透明。

這需要用到api函式,

private declarefunction getwindowlong lib "user32" alias "getwindowlonga"(byval hwnd as long, byval nindex as long) as long

private declarefunction setwindowlong lib "user32" alias "setwindowlonga"(byval hwnd as long, byval nindex as long, byval dwnewlong as long) as long

private declarefunction setlayeredwindowattributes lib "user32" (byval hwnd as long,byval crkey as long, byval balpha as byte, byval dwflags as long) as long

private constws_ex_layered = &h80000

private constgwl_exstyle = (-20)

private constlwa_alpha = &h2

private constlwa_colorkey = &h1

'遮蔽窗體指定顏色,這裡是遮蔽的藍色,前提要把窗體背景顏色設定成藍色

private subform_load()

dim rtn as long

rtn =getwindowlong(hwnd, gwl_exstyle)

rtn = rtn orws_ex_layered

setwindowlong hwnd,gwl_exstyle, rtn

setlayeredwindowattributeshwnd, vbblue, 0, lwa_colorkey

end sub

這樣就得到了你想要的自定義窗體了。

自定義WPF窗體形狀

你好wpf愛好者。隨著wpf等統一api語言的發明,豐富使用者介面變得非常容易。建立豐富的使用者介面只是乙個想法。您需要擁有的是創造性思維和最新技術融合。wpf和expression blend在製作豐富的ui應用程式,清晰的圖形和非常好的動畫方面非常有用。我將要發布的是將視窗矩形形狀塑造成影象的形...

Qt 自定義對話方塊形狀 移動窗體

mainwindow.h ifndef mainwindow h define mainwindow h include include include namespace ui class mainwindow public qmainwindow endif mainwindow hmainwi...

自定義畫筆形狀

from turtle import 匯入海龜畫相簿 begin poly 開始記錄圖形 color black yellow pensize 6 circle 100,steps 9 畫1個半徑為100的9邊行 forward 90 end poly 結束記錄圖形 p get poly 獲取sha...