View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide

funfunfun 7

PREV ------ ● TOP ● ------ NEXTUploaded Image: fmrph.jpg


こんどは四角形が親ってことでよろしく!!

さっきは親が「EllipseMorph」の子供のクラスを作ったんだけど
こんどは親が「RectangleMorph」の子供のクラスを新たに作ってみるだす!!
(邪魔なのでさっき作った楕円はゴミ箱に捨てちゃってください。クラスがある限りいつでも出せます)


■クラスを作る

新しくクラスを追加するときは「クラスカテゴリペイン」の項目を選択すると
「ソースコードペイン」にクラス定義のテンプレートが出てくるです。
もちろん今回は「MyMorph」の項目をクリックね。
テンプレートの「Object」を「RectangleMorph」に「#NameOfSubclass」を「TestMorph2」にして
(これまたご一緒に)アクセプト〜ッ!!
--------------------------------------------
RectangleMorph subclass: #TestMorph2
	instanceVariableNames: ''
	classVariableNames: ''
	poolDictionaries: ''
	category: 'MyMorph'
--------------------------------------------

Alt + s ( Cmd + s )

「クラスペイン」に新しくクラスが追加されたか確認しましょう。おっけ〜!!

Uploaded Image: image16.jpg



■インスタンスを出す

試しにインスタンスを出してみましょう!!
Workspaceに以下のコードを書いて、この一行を選択して(はいご一緒に)ドゥ〜イ〜ット!!
--------------------------------------------

TestMorph2 new openInWorld

--------------------------------------------

Alt + d ( Cmd + d )

Uploaded Image: image17.jpg


これまたおなじみの「部品」フラップにある「四角形」がでてきました。

Uploaded Image: image18.jpg



■メソッドを追加する

こいつも「initialize」メソッドを作って見た目を変えちゃいましょう!!
(「メソッドカテゴリペイン」の「as yet unclassified」という項目をクリックしてテンプレートを入れ替え)
--------------------------------------------
initialize
	super initialize.
	self extent: 100@100.
	self color: Color blue.
	self borderColor: Color black.
	self borderWidth: 10.
	self position: 50@50.
--------------------------------------------

Uploaded Image: zu1.jpg

もちろん忘れずアクセプト〜ッ!!

Alt + s ( Cmd + s )


Uploaded Image: image19.jpg



■インスタンスを出す

ドゥ〜イ〜ット!!
--------------------------------------------

TestMorph2 new openInWorld

--------------------------------------------

Alt + d ( Cmd + d )


これまたおっけー!!

Uploaded Image: image20.jpg




PREV ------ ● TOP ● ------ NEXT







■ MEMO ■

Links to this Page