如何更改smalltalk / squeak中提交按钮的位置和尺寸?这就是我到目前为止所做的:
submitButton: aModel
^PluggableButtonSpec new
model: aModel;
label: 'submit';
action: #submitName;
yourself
当我在吱吱声中打开一个窗口时,按钮非常小,位于左上角位置(我假设的默认位置)。
答案 0 :(得分:1)
这是我发现的方式:
您正在使用PluggableButtonSpec类。浏览(选择单词,cmd-B / ctrl-B)。这是ToolBuilder-Kernel包中的一个类。我注意到它是PluggableWidgetSpec的子类。这似乎提供了一些布局相关的方法,比如frame,margin,minimumExtent,padding,horizontalResizing(setter有注释“#rigid,#spaceFill,#shrinkWrap”)和verticalResizing。
也许我可以找到一些实际使用它们的例子?选择PluggableButtonMorph并输入ctrl-shift-N以获取类refs(或使用右键单击菜单)。嗯,唯一的用户是ToolBuilder> pluggableButtonSpec。如果我然后单击类refs窗口中的发件人按钮,我会得到一个窗口,显示#pluggableButtonSpec的20个发件人。
第一个可能是一个很好的例子,因为它显示了如何构建代码浏览器的类窗格中的按钮栏。它使用具有子项水平布局的面板。然后它创建了三个按钮,其中一个带有'?'收缩包裹(只有足够的空间适合)。这些被添加到面板中,它们之间具有间隔物。结果是一个面板,其中两个按钮将结果空间,间隔和一个小按钮分开。
其他的显示使用不同的布局方法。