我只是試圖在自定義形狀的氣球形狀的.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