社区
PowerBuilder
帖子详情
如何实现不规则形状的窗口
slley
2003-09-09 10:52:31
我想让我的窗体变成圆形的、三角形的、椭圆形的......, 应该怎么做?
...全文
37
3
打赏
收藏
如何实现不规则形状的窗口
我想让我的窗体变成圆形的、三角形的、椭圆形的......, 应该怎么做?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liujiaqiang
2003-09-09
打赏
举报
回复
用API吧,楼上的没错.
qiyousyc
2003-09-09
打赏
举报
回复
用API,去API调用版问。
jdsnhan
2003-09-09
打赏
举报
回复
API实现
可参考下面:
在PB下实现圆形的窗口:
首先在窗口定义下列局部外部函数(Local External Functions...):
FUNCTION ulong CreateEllipticRgn(ulong X1,ulong Y1,ulong X2,ulong Y2) LIBRARY
"gdi32.dll"
FUNCTION ulong SetWindowRgn(ulong hWnd,ulong hRgn,boolean bRedraw) LIBRARY
"user32.dll"
在窗口的open事件中加上:
long hrgn
long lres
hrgn=createellipticrgn(20,20,400,400)//其中参数为左上到右下的坐标值,可修改。
lres=setwindowRgn(handle(this),hrgn,true)
//记得在窗口中放置一个按钮关闭窗口,要不然……
---------------------------------------------------------------
long ll_handle
ws_position lws_pointapi[]
// 图形2
lws_pointapi[1].xpos = 1
lws_pointapi[1].ypos = 1
lws_pointapi[2].xpos = 800
lws_pointapi[2].ypos = 1
lws_pointapi[3].xpos = 800
lws_pointapi[3].ypos = 41
lws_pointapi[4].xpos = 1
lws_pointapi[4].ypos = 41
lws_pointapi[5].xpos = 1
lws_pointapi[5].ypos = 610
lws_pointapi[6].xpos = 830
lws_pointapi[6].ypos = 610
lws_pointapi[7].xpos = 830
lws_pointapi[7].ypos = 75
lws_pointapi[8].xpos = 35
lws_pointapi[8].ypos = 75
lws_pointapi[9].xpos = 35
lws_pointapi[9].ypos = 586
lws_pointapi[10].xpos = 1
lws_pointapi[10].ypos = 586 //多边形各个顶点坐标值
ll_handle = CreatePolygonRgn(lws_pointapi[], 10, 1)
//其中第 1 个参数为多边形各个顶点坐标值的数组
//其中第 2 个参数为多边形边数,可修改,配合数组值
//其中第 3 个参数为填充模式 ALTERNATE /WINDING
SetwindowRgn(handle(this), ll_handle, true)
放在你的控件中,你的控件就变成了多边形
函数声明为
Function ulong CreatePolygonRgn (ref ws_position lppt[], int cPoints, int fnPolyFillMode ) Library "gdi32.dll"
FUNCTION ulong SetWindowRgn(ulong hWnd,ulong hRgn,boolean bRedraw) LIBRARY "user32.dll"
在wpf中创建一个
不规则
形状
的
窗口
在wpf中创建一个
不规则
形状
的
窗口
半透明
窗口
中显示标准控件(控件与文字不透明)的
实现
方案
通过层叠
窗口
可以简单
实现
半透明与
不规则
形状
窗口
的效果,但在其上显示标准控件(控件与文字不透明)却是件比较有挑战的事情,这里会给出一个可行的解决方案。同时
实现
了一些可重用的
窗口
类,有相关需求时可以进行...
Qt下
实现
不规则
形状
窗口
显示
本文
实现
了Qt下显示两个
不规则
形状
的
窗口
demo,其中有Qt的
窗口
对话框和QPaintEvent及QMouseEvent的简单使用。
MFC
实现
不规则
形状
窗口
(CF登陆
窗口
)
可以看到,
窗口
不是死板的矩形,而是带突出带凹陷的
不规则
形状
。 2,原理 查询CWnd接口,有一个叫SetWindowRgn的方法,可以设置
窗口
显示的区域。 函数原型 int SetWindowRgn(HRGN hRgn,BOOL bRedraw); hRgn代表一...
qt使用遮罩
实现
不规则
形状
窗口
,包含圆角,椭圆和三角形等等.
我们平时绘制圆角
窗口
,一般使用样式来
实现
,如: this->setAttribute(Qt::WA_TranslucentBackground); this->setObjectName("mainwidget"); this->setStyleSheet("QWidget#mainwidget{background:...
PowerBuilder
1,077
社区成员
66,438
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章