[Newbies] Centering text in morphic
lenglish5 at cox.net
Wed Feb 8 18:44:37 UTC 2012
Hi Johann, just after you left IRC, I figured out an easy (though
perhaps not the best) way to do what you want:
a := SimpleButtonMorph new openInWorld.
a actWhen: #buttonDown. "turns off visible button behavior"
a label: 'new label'. "lets you change the label to a
different string of text"
a clipSubmorphs: true. "true means that your text doesn't extend
beyond the border of the button"
Hope this helps.
Lawson (saijanai_ on irc)
On 2/8/12 6:51 AM, Johann Hibschman wrote:
> How can I center text in morphic? I have a RectangleMorph subclass
> representing a "tile." I'd like to display a centered string label
> within the morph.
> My current approach is to just override #drawOn: with:
> TileMorph>>drawOn: aCanvas
> super drawOn: aCanvas.
> aCanvas drawString: 'hi' on: self innerBounds
> However, that just always puts the text in the upper-left corner.
> (Code is from memory, so I may have got something wrong.)
> By "center", I want the baseline-to-max-ascent for the font to be
> centered vertically (not the actual height of whatever characters I
> have), while the actual width is centered vertically.
> Would it be better to use a StringMorph for placing text like this?
> I'm afraid I don't yet understand what layout options I'd need to use
> to make it work.
> - Johann
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
More information about the Beginners