2016-03-25 4 views
1

Wie gehe ich vor, um die Position und die Abmessungen einer Übergabetaste in Smalltalk/Quietschen zu ändern? Das ist, was ich habe, so weit:Position und Abmessungen der Schaltfläche zum Senden ändern

submitButton: aModel 

^PluggableButtonSpec new 
    model: aModel; 
    label: 'submit'; 
    action: #submitName; 
    yourself 

Wenn ich ein Fenster in Quietschen öffnen, die Taste ist wirklich klein und in der oberen linken Position (die Standardposition Ich gehe davon aus) positioniert ist.

+0

Haben Sie versucht, es mit CSS zu gestalten ...? –

Antwort

1

Dies ist die Art, wie ich herausfinden würde:

Sie verwenden die Klasse PluggableButtonSpec. Durchsuchen Sie das (wählen Sie das Wort, cmd-B/ctrl-B). Das ist eine Klasse im Paket ToolBuilder-Kernel. Ich stelle fest, dass es eine Unterklasse von PluggableWidgetSpec ist. Das scheint einige Layout-bezogene Methoden zu bieten, wie zB frame, margin, minimumExtent, padding, horizontalResizing (der Setter hat als Kommentar #rigid, #spaceFill, #shrinkWrap) und verticalResizing.

Vielleicht kann ich einige Beispiele finden, wie diese tatsächlich verwendet werden? Wählen Sie PluggableButtonMorph und geben Sie ctrl-shift-N ein, um die Klassenreferenzen zu erhalten (oder verwenden Sie das Kontextmenü). Hmm, der einzige Benutzer ist ToolBuilder> pluggableButtonSpec. Wenn ich dann auf die Absender-Schaltfläche im Klassenreferenzfenster klicke, erhalte ich ein Fenster mit den 20 Absendern von #pluggableButtonSpec.

Die erste ist wahrscheinlich ein gutes Beispiel, da es zeigt, wie die Schaltflächenleiste im Klassenbereich des Code-Browsers erstellt wird. Es verwendet ein Panel mit einem horizontalen Layout seiner Kinder. Dann erzeugt es die drei Knöpfe, von denen der mit '?' wird eingeschrumpft (gerade genug Platz um zu passen). Diese werden mit einem Abstandhalter zwischen ihnen hinzugefügt. Das Ergebnis ist ein Panel, in dem zwei Knöpfe den entstehenden Raum, einen Abstandhalter und einen kleinen Knopf aufteilen.

Die anderen zeigen die Verwendung verschiedener Layout-Methoden.

Verwandte Themen