我在 TRadioGroup 中有两个radiobuttons。他们应该如何工作的所有逻辑都很好。但是 TRadioGroup 控制器周围有一个框架我认为我可以使用 border 属性或类似的东西删除它。但是控件似乎没有任何与边框/框架有任何相似性的属性。如何将控制器设置为不包含框架?
答案 0 :(得分:4)
TRadioGroup
不支持您要找的内容。将两个TRadioButton
组件放在TPanel
上。然后你可以看看你想要的样子。
答案 1 :(得分:4)
我认为你不能隐藏标准广播组框的边框。看起来你可以创建一个自定义后代并在正常绘制时覆盖绘画,但这种方法可能会更多地涉及主题支持。总的来说,走这条路看起来很多工作。
下一个最明显的方法是用容器(如面板)上的许多单独的单选按钮替换无线电组。这会起作用,而且代码很简单,但它可能会变得混乱。似乎很多繁忙的工作收获甚微,而且我很懒,可以寻找其他选择。
你可以使用一个kludge。如果将无线电组放在面板上而不是直接放在窗体(或其他背景)上,则可以使面板与无线电组相比尺寸不足。您希望面板与收音机组的内部一样大,但不要像边框那么大。然后将广播组的顶部和左侧设置为负数,以使边框落在父面板之外。边界不可见这种方式。
答案 2 :(得分:0)
我知道这不是最佳做法,但我有类似的问题,无法重新设计所有内容。所以我这样做只是为了隐藏边框(到目前为止效果很好)。
HANDLE Region = CreateRectRgn(3, 3, RadioGroup->Width-3, RadioGroup->Height-3) ;
SetWindowRgn(RadioGroup->Handle, Region, true);