我只是试图在自定义形状的气球形状的.net winform中创建窗体控件。 需要一个透明的气球工具提示,我可以在工具提示上放置按钮,但.net中的工具提示没有提供我们可以将按钮放在工具提示控件上的功能,因此我想使窗体控件看起来像一个气球工具提示,所以我可以把按钮放在窗体上看起来像一个工具提示。但我不能显示窗口窗体控件看起来像气球工具提示。 那我该怎么办? 我尝试了一种方式,我在气球形状的Powerpoint中创建图像,并将其设置为表单属性的背景图像。但是没有解决方案。窗体看起来像一个气球
1
A
回答
1
Control类支持一个带有字母< 255的BackColor,它是自动的。它要求家长自己绘制出控制的背景,然后吸引自己。但是,您需要气球的顶级窗口。这是一种窗口类型,可以任意叠加另一个窗口,并且不受基础窗口客户区的限制。它没有父。工具提示就是这样一个窗口。
Windows窗体中唯一可用于顶级窗口的控件是窗体。问题是:透明度技巧不再有效。由于顶层窗口没有Parent,因此没有任何明显的窗口要求绘制背景。它可能是许多窗口,属于其他进程。使用其TransparencyKey属性可以在窗体中获得透明度。但这是一个“硬”的透明度,相当于一个0的alpha。你可能想要一个软的。另一个令人讨厌的问题是,由于没有可靠的背景像素颜色,绘制消除锯齿(ClearType)文本不再有效。
长话短说:除非将气球限制在窗体的客户区,否则无法做到这一点。一种控制,而不是一种形式。
0
您可以尝试挂钩控件的Paint事件并在其中绘制按钮的视觉。
相关问题
- 1. 绘制一个球体,看起来像一个球体
- 2. 为什么我的OpenGL球体看起来像一个椭圆
- 3. 使ASP.NET Web窗体按钮看起来像一个Windows窗体按钮
- 4. Three.js 3d球体看起来2d
- 5. 在Windows窗体应用程序c中使多个窗体看起来像一个窗体#
- 6. Extjs窗体应该看起来像一张表
- 7. 整个身体看起来像一个图像,但有文字
- 8. 一个JRadioButton,看起来像一个JButton
- 9. 设置窗体看起来像这样的图像?
- 10. vb.net在每个布布的梯度风格的气泡图,使其看起来像一个球
- 11. Java窗体看起来不同
- 12. FOSUserBundle窗体看起来很奇怪
- 13. 使MainActivity看起来像变成一个新窗口
- 14. 看起来像excel的WPF窗口
- 15. UITableViewCell气球像iChat
- 16. 使BorderPane看起来像一个圆圈
- 17. 使WPF DataGrid看起来像一个ListView
- 18. 一个看起来像JTextArea的JTextPane
- 19. 嵌入式字体看起来不像
- 20. 立体图像看起来Unity3d
- 21. 气球弹出窗口WPF
- 22. 多个气球
- 23. 禁用窗体,但保持其每个元素看起来像启用
- 24. 窗体在另一台计算机上看起来不同
- 25. Windows Phone的消息框,看起来像气泡弹出
- 26. 如何使UITableView单元格看起来像消息气泡?
- 27. 摄像头看着一个球体 - 杆子包裹
- 28. 没有窗体的按钮在Firefox中看起来不好看
- 29. 如何使html div看起来像一个单独的窗体或使用JavaScript的窗口?
- 30. 气球像UI元素
在Winforms中这不是一件简单的事情 - 您必须创建一个自定义控件/其他类型的窗口,如其他答案所示。是的,这将涉及一些工作。 – 2009-12-12 09:29:41
@Harikrishna - 请不要问同样的问题。如果有什么不清楚的地方,编辑这个问题来澄清它。我已经合并了重复项。 – 2009-12-12 11:14:00