2.画面内検索
2つ目は、「カラムが100以上もあるようなテーブルだと、目的のカラムがどこにあるのか探すだけでも大変なんです」という相談です。
これを解決するために、検索ダイアログを追加して、すぐにたどりつけるようにしました。


入力画面に表示しているカラム名をリストに表示しています。英名、和名に文字を入力すると、その文字に該当するカラムのみリストに表示されます。

リストからカラムを選択して、「ジャンプする」をクリックすると対象カラムに移動します。
移動する際に、ScrollBoxの「scroll-to-object」メソッドを使用しています。「scroll-to-object」はScrollBoxをスクロールして、指定したオブジェクトを表示してくれます。例えば下図のサンプルでは、ボタンをクリックするとデータ10が表示される位置までScrollBoxがスクロールします。

このサンプルのソースは以下のとおりになります。
{let v_text10:TextFlowBox = {TextFlowBox "データ10"}}
{let v_sc:ScrollBox =
{ScrollBox
width=3cm,height=3cm,border-width=1pt,
{VBox
{TextFlowBox "データ01"},
{TextFlowBox "データ02"},
{TextFlowBox "データ03"},
{TextFlowBox "データ04"},
{TextFlowBox "データ05"},
{TextFlowBox "データ06"},
{TextFlowBox "データ07"},
{TextFlowBox "データ08"},
{TextFlowBox "データ09"},
v_text10,
{TextFlowBox "データ11"},
{TextFlowBox "データ12"},
{TextFlowBox "データ13"},
{TextFlowBox "データ14"},
{TextFlowBox "データ15"},
{TextFlowBox "データ16"},
{TextFlowBox "データ17"},
{TextFlowBox "データ18"},
{TextFlowBox "データ19"},
{TextFlowBox "データ20"}
}
}
}
{value v_sc}
{CommandButton
label = "データ10へ移動",
{on Action do
{v_sc.scroll-to-object v_text10}
}
}
上記のように、メソッドを呼ぶだけで簡単にScrollBox内のオブジェクトを表示できます。入力チェック時に、エラーのある位置までにスクロールするなどの用途にも使用できて非常に便利です。
まとめ
DBメンテツールの開発を通じてCurlのコントロールを紹介させていただきました。少しでもCurlの良さが伝わっていればいいなと思います。Curl Apps Galleryでは実際にCrulアプリを操作できますので、実際の動きを見ていただければ、Curlがどのようなものか分かりやすいかと思います。
これまで3回にわたり記事を書いてきましたが、少しでも開発のお役に立てれば幸いです。ありがとうございました。
この記事は参考になりましたか?
既に会員の方はを行ってください。
- Curlで構築する長崎電子県庁システム(DBメンテナンスツール編)連載記事一覧
-
- Curlで構築する電子県庁システム(DBメンテナンスツール編) アクセス制御と画面内検索を...
- Curlで構築する長崎電子県庁システム(DBメンテナンスツール) データ表示パフォーマン...
- Curlで構築する長崎電子県庁システム(DBメンテナンスツール) 概要とユーザーインターフ...
- この記事の著者
-
株式会社ドゥアイネット 湯川栄太(ドゥアイネット ユカワエイタ)
【湯川栄太】株式会社ドゥアイネットに勤務するプログラマーです。CurlやFlexを使ってRIAの開発を担当しています。最近はマッシュアップに興味があります。開発日記http://blog.doinet.co.jp/CurlApplication Award2006http://www.curlap.com/award2006/index.htmlMashupAward4http://mashupaward.jp/entry_list/?posted=316
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア

