Visit Mozilla.org

XUL:menulist

出典: MDC

« XUL リファレンス HOME    [ | 属性 | プロパティ | メソッド | 関連項目 ]

ドロップダウン選択リストに使用される要素。ユーザは、menulist 内に表示された要素の一つを選択します。現在選択されたものは menulist 要素上に表示されます。ドロップダウンを生成するには、選択肢の menuitem 要素を格納した menupopupmenulist 内に置いてください。menulist の選択が変更されると、command イベントによってコードが実行されます。

詳しい情報は XUL チュートリアルにあります。

属性
accesskey, crop, disableautoselect, disabled, editable, focused, image, label, oncommand, open, preference, readonly, sizetopopup, tabindex, value
プロパティ
accessibleType, crop, description, disableautoselect, disabled, editable, editor, image, inputField, itemCount, label, menuBoxObject, menupopup, open, selectedIndex, selectedItem, tabIndex, value
メソッド
appendItem, contains, getIndexOfItem, getItemAtIndex, insertItemAt, removeAllItems, removeItemAt, select

[編集]

  <menulist>
    <menupopup>
      <menuitem label="option 1" value="1"/>
      <menuitem label="option 2" value="2"/>
      <menuitem label="option 3" value="3"/>
      <menuitem label="option 4" value="4"/>
    </menupopup>
  </menulist>


[編集] 属性

XUL 要素からの継承
align, allowevents, allownegativeassertions, class, coalesceduplicatearcs, collapsed, container, containment, context, contextmenu, datasources, dir, empty, equalsize, flags, flex, height, hidden, id, insertafter, insertbefore, left, maxheight, maxwidth, menu, minheight, minwidth, mousethrough, observes, ordinal, orient, pack, persist, popup, position, preference-editable, querytype, ref, removeelement, sortDirection, sortResource, sortResource2, statustext, style, template, tooltip, tooltiptext, top, uri, wait-cursor, width

accesskey
型: character
ショートカットキーとして使用される文字を設定します。この文字はその要素の label 属性のテキストに現れる文字の一つでなければいけません。

crop
型: 下記の値のいずれか一つ
要素の label に与えられた空間が小さ過ぎるときは、crop 属性によって指定された側のテキストが切り取られます。テキストが切り取られた場所には省略記号 (ellipsis) が使用されます。ボックスの方向が反対の場合は、切り取られる場所も反対側になります。
  • start: テキストは先頭から切り取られます。
  • end: テキストは末尾から切り取られます。
  • left: 非推奨 テキストは左側から切り取られます。
  • right: 非推奨 テキストは右側から切り取られます。
  • center: テキストの中央が切り取られ、通常、テキストの先頭と末尾が表示されます。
  • none: テキストは省略記号を使用して切り取られません。しかし、テキストがあまりに長い場合は単純に削除されます。削除する側は CSS の行揃え (text alignment) に依存します。

disableautoselect
型: boolean
この属性が true または省略された場合、menu 上の選択された項目は、ユーザが textbox に入力したものと一致させるために更新されます。text が list 内のどの項目とも一致しない場合、menu の選択がクリアされます。この属性が false の場合、選択された項目は更新されません。この属性は editable な menulist にのみ適用されます。

disabled
型: 真偽値
要素が無効化されているかどうかを示します。ある要素が true に設定されていたら、その要素は無効化されています。無効化された要素は通常グレイ表示のテキストで描画されます。要素が無効化されていると、ユーザのアクションには応答せず、フォーカスもあてられず、command イベントも発生しません。

editable
型: boolean
menulist の value を、value フィールドに直接入力して変更できるかどうかを指示します。これは、そばにドロップダウンの矢印を持つ textbox として描画されます。ユーザはテキストを textbox に入力するか、ドロップダウンの選択肢から一つを選択します。

focused
型: boolean
要素がフォーカスされているとき、この属性値は true です。

image
型: 画像の URL
要素上に表示する画像の URL。この属性が空または除外された場合、画像は表示されません。画像の位置は dir 属性および orient 属性によって決定されます。

label
型: string
要素上に表示するlabel。 省略された場合、テキストは表示されない。

oncommand
型: script code
このイベントハンドラは command が活性化した時、呼び出されます。これは、ユーザがメニュー項目を選択したり command に割り当てられたキーボードショートカットが押したりした場合に起こります。

open
型: boolean
menutype ボタンについて、メニューが開かれたとき、open 属性が true に設定されます。メニューが閉じられると open 属性は提供されません。

preference
型: 要素の id
要素を対応する preference につなぎます。この属性は prefwindow 内で使用された場合のみ効果があります。preference の値は、要素の value プロパティと一致するように更新されます。

readonly
型: boolean
true に設定した場合、ユーザは要素の値を変更できません。しかし、スクリプトからは依然として値を変更できます。

sizetopopup
型: 下記の値のいずれか一つ
menu の幅と menupopup の幅をどのように決定するかを指示します。sizetopopup 属性が設定されていないか、値に none が設定されている場合、menu が優先される幅になり、popup の幅は、この幅の外側まで拡張され、menu 自身の最大幅による影響を受けません。
  • none: popup の幅は menu のサイズにはなりません。
  • always: always に設定すると、menu の幅は menupopup に必要な幅と同じになります。menu に最大幅が設定されている場合、popup もその幅になります。

tabindex
型: 整数
要素のタブの順番。タブの順番は tab キーが押下されたときにフォーカスが移動する順番です。より大きな tabindex の値をもつ要素は、タブの遷移が後になります。

value
型: 文字列
文字列の属性はデータ値を要素に関連付けます。特定の目的のために使われるわけではありませんが、スクリプトからあなた自身の用途のためにアクセスできます。

[編集] プロパティ

XUL 要素からの継承
align, allowEvents, boxObject, builder, className, collapsed, contextMenu, controllers, currentItem, database, datasources, dir, flex, height, hidden, id, left, listBoxObject, maxHeight, maxWidth, menu, minHeight, minWidth, observes, ordinal, orient, pack, persist, ref, resource, statusText, style, tooltip, tooltipText, top, value, width

DOM 要素からの継承
attributes, childNodes, cloneNode, firstChild, lastChild, localName, namespaceURI, nextSibling, nodeName, nodeType, nodeValue, ownerDocument, parentNode, prefix, previousSibling, tagName

accessibleType
型: integer
要素の accessibility オブジェクトの種類を示す値。

crop
型: string
crop 属性の値の取得と設定。

description
型: string
現在選択されている menuitem の description の設定。

disableautoselect
型: boolean
disableautoselect 属性の値の取得と設定。

disabled
型: 真偽値
disabled 属性の値の取得と設定。

editable Firefox 3 の新機能
型: boolean
menulist が editable な場合、このプロパティは true を返します。

editor
型: nsIEditor
editable なテキストのための nsIEditor への参照。このプロパティは読み取り専用です。

image
型: image URL
現在選択された項目に関連付けられた画像。

inputField
型: textbox 要素
編集可能な menu list に使用される textbox 要素への参照。これは編集可能な menulist にのみ適用される、読み取り専用のプロパティです。

itemCount Firefox 3 の新機能
型: integer
子項目の数を保持する読み取り専用のプロパティ。

label
型: string
label 属性の値の取得と設定。

menuBoxObject
型: nsIMenuBoxObject
menu を実装する nsIMenuBoxObject への参照。

menupopup
型: menupopup element
menulist で使われる menupopup への参照。このプロパティは読み取り専用です。

open
型: boolean
open 属性の値の取得と設定。

selectedIndex
型: 整数値
選択された項目のインデックスを返します。また、このプロパティにインデックスを設定して項目を選択する事もできます。このプロパティに -1 を設定すると、項目の選択をすべて解除します。

selectedItem
型: 要素
選択できる要素がある要素の、現在選択されている項目を保持します。項目が選択されていないときは、この値は null になります。この値の設定によって項目を選択することができます。値が、このプロパティまたは selectedIndex プロパティを通じて変更されるか、ユーザによって変更された場合、select イベントが要素に送られます。


tabIndex
型: 整数
tabindex 属性の値の取得と設定。

value
型: 文字列
value 属性の値の取得と設定。

[編集] メソッド

XUL 要素からの継承
blur, click, doCommand, focus, getElementsByAttribute

DOM 要素からの継承
addEventListener, appendChild, dispatchEvent, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, hasAttribute, hasAttributeNS, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeAttribute, removeAttributeNode, removeAttributeNS, removeChild, removeEventListener, replaceChild, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS

appendItem( label, value, description )
戻り値の型: element
新しい menuitem 要素を作成し、menulist の末尾に追加します。値(value) と説明(description) の設定は任意です。この関数は新しい項目を返します。

contains( item ) Firefox 3 の新機能
戻り値の型: boolean
menulist が特定の menuitem をその項目として含むとき、true を返します。

getIndexOfItem( item )
戻り値の型: integer
指定した item の 0 を基点とした位置を返します。項目は、list 内に表示された最初の項目から番号が付けられます。

getItemAtIndex( index )
戻り値の型: element
指定した index の位置の要素を返します。

insertItemAt( index, label, value )
戻り値の型: element
このメソッドは新しい項目を生成し、それを指定した位置に挿入します。値の設定は任意です。新しい項目要素を返します。

removeAllItems()
戻り値の型: 戻り値なし
menu 内の項目すべてを削除します。

removeItemAt( index )
戻り値の型: element
要素内の指定した index の子項目を削除します。このメソッドは削除した項目を返します。


select()
戻り値の型: 戻り値なし
menulist の textbox 内のテキストすべてを選択します。このメソッドは editable な menulist にのみ適用されます。

[編集] 関連項目

要素
menu, menubar, menuitem, menupopup, menuseparator
インタフェース
nsIAccessibleProvider, nsIDOMXULMenuListElement