ARAGO for Internet Wiki Project AkuAku

This web site is powered by Arago for Internet v7.0 UTF-8 edition on FreeBSD
SPC main menu Expand/Fold
Products 取扱商品 Expand/Fold
SouthWind  Expand/Fold
Q&A Technical support Expand/Fold
BBS 掲示板 Expand/Fold
Easy PC life Expand/Fold

Last Edit Date: 07/08/2008
メニューの編集

通常の静的なHTMLページでのメニューは、そのページにHTML TAGによって記述されているが、 akuakuでは、動的にそれらのメニューをそれぞれのページのプログラムで書き出している。
そのためメニューの順序を変更するには、HTMLページの修正という方法ではできない。 逆に言うと、新規にページを作成すると、メニューに追加しないと指定しない限り、自動的にメニューに追加されていきます。

ボーダーで囲まれたメニューがメインメニューです。 サブメニューはそのメインメニューの下に続くメニューです。 メインメニューの右にあるマークをクリックすることで、サブメニューの表示非表示ができます。 最初からサブメニューを非表示にするには、そのページのプログラムを変更してください。

またページによっては、全くメニューに表示されない設定もあります。 ページの作成時にその旨の設定をしてください。


メニューの順序の変更には次の3種類のものがあります。

メイン目ユーの順番の移動
サブメニューを現在のメインメニューから別のメインメニューへの移動
同じメインメニューの中で、サブメニューの順序の変更です。

メニュー情報は、次の二つのデータベースファイルに書き込まれています。 
menuorder.dbf と lmenu.dbfです。
メニューの順序を変更する方法として、それぞれのデータベースにはインデックスをかけていません。 まず移動するメニューのレコードへLOCATEで移動し、内容をメモリにコピーし、そのレコードを削除します。 移動する目的のレコードまでLOCATEで移動して、INSERTでレコードを追加し、内容をコピーします。

LOCATEを使うために、随分と遅くなりますが、実際の測定結果では、10面件のレコードでLOCATE、DELETE、LOCATE、INSERT処理で2GクラスのCPUで約20-40msくらいです。
通常このメニューの変更の頻度は月に数回発生するかどうかのレベルですので、 問題の発生の可能性は大変低いものと思います。

プログラムは簡単ですので、 コードをご覧ください。


Advertisement Expand/Fold