プログラム断片(2009/04/16)
for VisualWorks 7.6 with Jun776
| aWindow |
aWindow := UI.ApplicationWindow new.
aWindow label: 'My First Window'.
aWindow minimumSize: 400 @ 300.
aWindow open.
^aWindow
 |
アプリケーションウィンドウのインスタンスを作って
'My First Window'というラベルを付け
最小サイズとして400@300を指定して
ウィンドウを開いて
応答する
|
|
| aWindow |
aWindow := UI.ApplicationWindow new.
aWindow label: 'My First Window'.
aWindow minimumSize: 400 @ 300.
aWindow maximumSize: 900 @ 675.
aWindow openIn: (100 @ 100 extent: 600 @ 450).
^aWindow
 |
最小サイズと最大サイズを指定し、
決まった場所に決まった大きさでウィンドウを開く
|
|
| anImage aWindow |
anImage := Graphics.Screen default completeContentsOfArea: (100 @ 100 extent: 600 @ 450).
aWindow := UI.ApplicationWindow new.
aWindow label: 'My First Window'.
aWindow minimumSize: 400 @ 300.
aWindow maximumSize: 900 @ 675.
aWindow component: anImage.
aWindow openIn: (100 @ 100 extent: 600 @ 450).
^aWindow
 |
切り取った場所と同じところにウィンドウが開くから
マウスでウィンドウをドラッグして動かしてごらん
|
|
| aLambda anImage aWindow |
aLambda :=
[:urlString |
| separatorString workDirectory commandLine imageFile imageReader |
separatorString := Core.String with: OS.Filename separator.
workDirectory := (OS.SystemUtils getEnvironmentVariable: 'HOME') , separatorString , 'Desktop'.
commandLine := '(cd ' , workDirectory , ' ; curl -O ' , urlString , ')'.
OS.ExternalProcess cshOne: commandLine.
imageFile := workDirectory , separatorString , (OS.URL fromString: urlString) path last.
imageReader := Graphics.ImageReader fromFile: imageFile.
imageReader image].
anImage := aLambda value: 'http://www.google.co.jp/intl/ja_jp/images/logo.gif'.
aWindow := UI.ApplicationWindow new.
aWindow label: anImage printString.
aWindow minimumSize: anImage extent.
aWindow maximumSize: anImage extent.
aWindow component: anImage.
aWindow openIn: (100 @ 100 extent: anImage extent).
^aWindow
 |
インターネットを介して
公開されている画像をダウンロードし
それを表示する
まずはGoogleのロゴ
|
|
| aLambda anImage aWindow |
aLambda :=
[:urlString |
| separatorString workDirectory commandLine imageFile imageReader |
separatorString := Core.String with: OS.Filename separator.
workDirectory := (OS.SystemUtils getEnvironmentVariable: 'HOME') , separatorString , 'Desktop'.
commandLine := '(cd ' , workDirectory , ' ; curl -O ' , urlString , ')'.
OS.ExternalProcess cshOne: commandLine.
imageFile := workDirectory , separatorString , (OS.URL fromString: urlString) path last.
imageReader := Graphics.ImageReader fromFile: imageFile.
imageReader image].
anImage := aLambda value: 'http://i.yimg.jp/images/mht/2009/0414_ioc.gif'.
aWindow := UI.ApplicationWindow new.
aWindow label: anImage printString.
aWindow minimumSize: anImage extent.
aWindow maximumSize: anImage extent.
aWindow component: anImage.
aWindow openIn: (100 @ 100 extent: anImage extent).
^aWindow
 |
今度はYahooのロゴ
|
|
| aLambda anImage aWindow |
aLambda :=
[:urlString |
| separatorString workDirectory commandLine imageFile imageReader |
separatorString := Core.String with: OS.Filename separator.
workDirectory := (OS.SystemUtils getEnvironmentVariable: 'HOME') , separatorString , 'Desktop'.
commandLine := '(cd ' , workDirectory , ' ; curl -O ' , urlString , ')'.
OS.ExternalProcess cshOne: commandLine.
imageFile := workDirectory , separatorString , (OS.URL fromString: urlString) path last.
imageReader := Graphics.ImageReader fromFile: imageFile.
imageReader image].
anImage := aLambda value: 'http://www.smalltalk.jp/SML/image/balloon.jpg'.
aWindow := UI.ApplicationWindow new.
aWindow label: anImage printString.
aWindow minimumSize: anImage extent.
aWindow maximumSize: anImage extent.
aWindow component: anImage.
aWindow openIn: (100 @ 100 extent: anImage extent).
^aWindow
 |
かの有名な「Smalltalk Balloon」
|
|
for VisualWorks 7.6 with Jun776
Updated: 2019/08/24 (Created: 2009/04/16)
