ListBoxに横スクロールを表示させるには

【ご質問】
Curl RTE5の環境にて、ListBoxの下にスクロールバーを表示することは可能でしょうか。

【回答】
ScrollBoxクラスの”always-disable-hscroll?”プロパティを 利用することで実現可能です。

以下のサンプルを参考にしてください。

{curl 5.0,6.0 applet}
{curl-file-attributes character-encoding = “shift-jis”}

{let lbox:ListBox = {ListBox width = 30mm, height = 20mm,
                        “Aardvark”, “Cat”, “Dog”, “Elephant”,
                        “あああああいいいいいうううううえええええおおおおお”,
                        “Aardvark”, “Cat”, “Dog”, “Elephant”
                    }
}

{value
    ||もしも将来のバージョンアップでグラフィック構造が変更されても
    ||出来るだけ対応できるようにするため宣言の型をできるだけ緩くします
    let ui:ListBoxUI = (lbox.ui-object asa ListBoxUI)
    let iterator:{Iterator-of Graphic} = ui.graphical-children

    ||ScrollBoxと決めてしまうとグラフィック構造が変更された場合にエラーになる可能性があるため
    ||any型にしておきます
    let g:any = ({iterator.read-one-as-any})
    ||型がScrollBoxのときのみ実行するように分岐しておきます
    {type-switch g
     case scroll-box:ScrollBox do
        ||こちらの設定で横スクロールが表示され利用できるようになります
        ||詳細は「always-disable-hscroll?」をヘルプドキュメントで検索してください
        set scroll-box.always-disable-hscroll? = false
     else
        ||型がScrollBoxではなかったときの処理を記述してください
    }

    lbox
}

(注意)
ScrollBoxを取得することで、ListBoxでの横スクロールバーの利用が可能となりますが、
上記サンプルは、”Ver5.0においてのListBoxのグラフィック構造”に沿ってScrollBoxを取得しているため、
将来もしもグラフィック構造が変更され、その”グラフィック構造が変更されたバージョン”に
アプリケーションをバージョンアップするとエラーが起こる可能性があります。