我对NSButton Title的可见性感到震惊。我所做的是,我已经采用CALayer并为该层安排背景颜色,角半径和边框宽度。最后,此图层设置为NSButton图层但是在执行此操作后,NSButton的标题不可见。请提出任何想法。提前谢谢。
这是我的代码,我尝试过的。
var wordButton = new NSButton(new CGRect(20, 0, tableColumn.Width - 70, 30));
CALayer layer = new CALayer();
layer.CornerRadius = 5f;
layer.BorderWidth = 1f;
layer.BackgroundColor = NSColor.FromRgba(0.70f, 0.87f, 0.86f, 1.0f).CGColor;
wordButton.WantsLayer = true;
wordButton.Layer = layer;
wordButton.Title = "Test";
wordButton.SetButtonType(NSButtonType.MomentaryPushIn);
wordButton.BezelStyle = NSBezelStyle.SmallSquare;
答案 0 :(得分:1)
自定义现有图层:
wordButton.WantsLayer = true;
//wordButton.Layer = layer;
wordButton.Layer.CornerRadius = 5f;
wordButton.Layer.BorderWidth = 1f;
wordButton.Layer.BackgroundColor = NSColor.FromRgba (0.70f, 0.87f, 0.86f, 1.0f).CGColor;
但是这将是默认按钮UI背后的背景。
NSButton的设计不是以这种方式定制的。 如果你想要一个自定义背景,你应该子类化NSButton覆盖drawrect并自己绘制标签