我正在使用 Smalltalk Pharo 版本 4.0 构建一个 GUI 应用程序。我使用以下 UITheme 构建器代码来创建标签,因为 Morphic TextMorphs/LabelMorphs 不实现观察者模式,以便当它们的值通过程序逻辑发生变化时在 GUI 上动态更新它们:
UITheme builder
newLabelFor: self
getLabel: #labelValue
getEnabled: nil
我需要更改上述标签的字体和文本颜色。我尝试使用以下和其他类似的选项,但它对我不起作用:
newLabelGroup: labelsAndControls font: aFont labelColor: aColor
有什么办法可以实现这一点吗?
最佳答案
您可以将消息#color:
和#font:
发送到#newLabelFor:getLabel:getEnabled
返回的对象。例如,下面的代码创建一个大红色文本:
(UITheme builder
newLabelFor: 'Text'
getLabel: #asString
getEnabled: nil)
color: Color red;
font: (LogicalFont familyName: 'Source Sans Pro' pointSize: 30);
openInWorld
根据您的图像和设置,这不适用于所有字体。
关于smalltalk - Pharo Smalltalk UI 主题生成器标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31668869/