回答
這似乎是太遲了,但我知道Angus's site(「繪圖對象」)上有一個免費的。 (我誤解了你需要的東西就像你的問題中的非recutanglular 形式像TRzShapeForm)。
對不起。
angus's Drawing Objects http://angusj.com/delphi/drawobj3.png
我注意到他從他的網站中刪除了這個組件。 (這個答案可能是增加請求或問題..)。您可以從互聯網存檔下載此組件(至少現在2013年3月13日)。http://wayback.archive.org/web/20100926090549/http://angusj.com/delphi/ – benok 2013-03-13 08:55:20
這裏有很多可能性,其中之一是實現您自己的組件,從TPanel
派生並使用區域來指定面板的區域,這可以通過調用Windows API函數來完成CreatePolygonRgn。您可能必須手動重新對齊子控件。
如果不需要面板包含任何子控件,則應考慮使用形狀對象(TShape
),而不是使用形狀對象,也可以使用現有構件的組合,或者創建自己的構件。
另一種選擇是使用常規面板,並在其上繪製形狀作爲背景。最簡單的方法可能是實現您自己的TPanel
類並處理繪製代碼。這不會形成面板,但可以模擬它的視覺特徵。如果您需要子組件,則可能需要覆蓋Realign
函數以確保子組件保留在異形面板邊界內。
另外,你必須嘗試在互聯網上尋找你的運氣找到第三方組件,實現這一點,我做了一個快速搜索,但沒有發現任何面板可以做到這一點,雖然我必須承認我的搜索不是很徹底,你可能比我有更好的運氣。
我購買http://www.tmssoftware.com/site/products.asp?t=vclp它看起來像它可以做我想做的(並在情況下提供源代碼,它不僅90%的我想要什麼)
- 1. 尋找任意非矩形體
- 2. RLE尋找矩陣矩形
- 3. 需要「非矩形卡布局面板」或「透明組件」
- 4. 如何計算一組精確覆蓋矩形板矩形板的矩形板
- 5. 用矩形填充面板
- 6. 矩形不會在面板
- 7. 矩形面板圖形關係
- 8. VCL組件Delphi
- 9. Golang:gorm use尋找非模板遷移表(&)
- 10. 尋找石墨圖形模板
- 11. 尋找小矩陣
- 12. 在(非)對角矩陣中尋找非零元素的速度
- 13. 修改VCL組件
- 14. Android OpenCV尋找最大的正方形或矩形
- 15. 尋找四邊形內最大的矩形
- 16. 插入非矩形形狀
- 17. 在面板上繪製一個矩形
- 18. 在面板上重繪矩形
- 19. C#的WinForms - 滾動面板矩形
- 20. 非矩形圖像
- 21. 非矩形圖像
- 22. 尋找C#2D平面代圖形庫
- 23. 找出矩形是否被上面的矩形遮擋了?
- 24. 尋求FOSS IPv4地址選擇器VCL組件
- 25. 查找矩形包含矩形數組中的點
- 26. 尋找矩陣在MATLAB
- 27. 尋找強連接組件?
- 28. 尋找一個OSD組件
- 29. 尋找3D繪圖組件
- 30. 爲一組三維矩形物品尋找最佳3D箱子尺寸
如今,我們可以在http://softwarerecs.stackexchange.com/ – Mawg 2017-03-21 09:11:16