打破方正視窗,實現橢圓、多邊形、圓角矩形、任意組合形狀視窗,提升軟體吸引力 (如超級解霸皮膚)。
| 函式 | 用途 |
|---|---|
| CreateEllipticRgn | 橢圓/圓形區域 |
| CreatePolygonRgn | 多邊形區域 |
| CreateRectRgn | 矩形區域 |
| CreateRoundRectRgn | 圓角矩形區域 |
| CombineRgn | 區域布林運算 (AND/OR/XOR/DIFF) |
| SetWindowRgn | 將區域套用至視窗,決定可見/點擊範圍 |
HRGN hRgn = CreatePolygonRgn(points, nPoints, ALTERNATE);
// 或組合多個基本區域
// HRGN hRgn1 = CreateEllipticRgn(...);
// HRGN hRgn2 = CreateRoundRectRgn(...);
// CombineRgn(hRgn, hRgn1, hRgn2, RGN_OR);
SetWindowRgn(Handle, hRgn, TRUE); // TRUE=重繪
// 之後不得刪除 hRgn,系統會接管