如何在Delphi中创建一个非矩形按钮?

4
如何使用Delphi创建一个透明的非矩形按钮?

2
如果真的这么紧急,你不应该试图自己创建它。你要花太长时间才能弄清楚基础知识。最好是找到已经制作好的非矩形按钮之一。可以尝试Torry's。 - Rob Kennedy
3个回答

5
基本上,您可以使用 SetWindowRgn 来定义按钮/控件/窗口的形状。请参见此处以获得示例。
或者,如果您不介意您的按钮不能被键盘选择,您也可以使用TImage并使用OnMouseUp事件。
或者,在Torry中找到已经实现您需要的功能的第三方按钮。

2

如果你不介意它看起来非常奇怪,你可以使用SetWindowRgn - 超出区域的部分将被简单地消失。你最好的选择可能是从TCustomTransparentControl派生,但是你需要进行自定义绘制。我猜想,自定义绘制一直是你所期望的吧?


1

Raize Components有一个名为TRzShapeButton的组件,但可能也有免费的替代品。


1
+1 - 而且你还可以获得许多其他非常成熟且拥有出色支持的组件。这是一个非常周密的库。 - skamradt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接