私はSmalltalkでRSSReaderを書いているので、RSSModel(タイトル、エントリ)とEntryModel(タイトル、画像、コンテンツ、日付)の2つのモデルクラスがあります。
EntryViewのリスト(UI.Viewから継承)があり、RSSViewがあり、displayOnメソッドは、それぞれの間にギャップがあるエントリを垂直に表示します。
| dy iView gap |
gap := 5.
dy := 0.
1 to: model entries size
do:
[:i |
iView := EntryView model: (model entries at: i).
iView displayOn: aGC at: 0 @ dy.
dy := dy + 89 + gap]
結果は次のとおりです。
私がそれを正しく行うかどうかはわかりませんので、RSSViewを表示するためのより良い解決策があれば教えてください。
質問:
- エントリーの高さを取得する方法は?
dy:=dy+89+gap
ここで、89がハードコードされたエントリの高さである場所を記述します。 - スクロールバーがウィンドウ内のエントリをスクロールできるようにするにはどうすればよいですか?