7月 132012
 

選択を解除するとselectedItemが-1になってしまう。
通常、editableでないComboBoxでは、明示的に指定しない限りselectedItemが-1になる事はない。

[#SDK-9402] [customer] Ctrl + Click the selected item returns selectionIndex=-1 for ComboBox – Adobe Bug System

バグではないらしい。
ヘルプのComboBoxのユーザ操作には載ってない動作なのだけど…
Listクラス依存の動作なので、他のList系コントロールでも同様の動作をするはず。

Listクラスを継承し、selectItemメソッドをoverrideしてCtrlキーを無視するように変更したListクラスを作成。
ComboBoxのdropdownFactoryに使用するListクラスを作成したListクラスに変更すれば解決する。

7月 132012
 
DOM3Events関連
  • ActionScript3(以下AS3)はDOM Level3 Eventsに準拠している。
     (イベントリスナの優先度など、一部に非準拠仕様も追加されている)
  • リスナは同期処理であると定義されており、1つのリスナ実行中に他のリスナが同時に実行される事はない。
  • リスナは追加された順に実行される。
    ※AS3ではaddEventListenerメソッドで実行優先度を指定できる。
  • リスナの実行順序は規定されているが、MouseEventKeyboardEvent等の一部を除きイベントの発生順序までは規定されていない。
  • EventTarget.dispatchEvent()によって新たにイベントが発生させられた場合、発生させたリスナの処理は新たなイベントの伝播が完了するまで再開しない。
  • EventオブジェクトのcurrentTargeteventPhaseプロパティは、DOM Eventsの実装によって自動的に更新されるもので、読み取り専用である。
7月 132012
 

環境:Flex2.0.1(どうやらFlex3.0でも変わってなさそう?)

このメモ以降にも色々調べたりAdobeとやりとりしたはずだが、よく覚えてない…
FlashPlayer10との絡みもあったはず。

FlexのTextInputはimeModeプロパティを指定した時変な動きをする。

以下のように入力項目が並んでいるとする。

  • 入力①:IME制御なし
  • 入力②:ひらがな
  • 入力③:IME制御なし

①にフォーカスがある状態で、IMEがONかつひらがな入力の場合、
①→②→③とフォーカスを移動すると③の時点でIMEがOFFになってしまう。
ちなみにIMEはOFFにされるが、変換モード(全角カタカナ、半角英数など)は①の状態を記憶しておき、③に移る時に元に戻している。

③では、②で変更されたモードをそのまま引き継ぐのが通常の動作のように感じる。
個人的には①のモードを記憶しておいて、戻ってくれたほうが使い勝手がいいと思うのだけど。。
Continue reading »

7月 132012
 
  • タイトルの長さとボタンの幅で決まる。
  • 継承でどうにかする事もできそうにない。
  • タイトルの末尾にスペースを付加して調整する事は可能。
7月 132012
 

欧米仕様の為か、0が省略される

  • 0.1→.1
  • 1.1→1.1
  • 0.01→.01

0に相当する文字列を渡した場合フォーマットされない

  • 00.01→.01
  • 00.00→00.00
  • 001→1
  • 000→000

useThousandsSeparatorがfalseの場合、整数部はフォーマットされない
※precision=”2″の場合

  • 01234→01234.00
  • 002.5→002.50
7月 122012
 

OracleSQLでは/**/の開始文字と終了文字は空白や改行でテキストから切り離す必要は無いが、SQL*Plusでは空けなければならない。

Oracle SQLの基本要素

  • スラッシュとアスタリスク(/*)を使用してコメントを開始します。コメントのテキストを続けます。このテキストは複数行にまたがってもかまいません。アスタリスクとスラッシュ(*/)を使用してコメントを終了します。開始文字と終了文字は、空白や改行によってテキストから切り離す必要はありません。
  • –(ハイフン2個)を使用してコメントを開始します。コメントのテキストを続けます。このテキストは複数行にまたがることはできません。改行によってコメントを終了します。

SQLの入力に使用するツール製品には、追加の制限事項があるものもあります。たとえば、SQL*Plusを使用している場合、デフォルトでは複数行のコメント内に空白行を入れることはできません。詳細は、データベースのインタフェースとして使用するツール製品のドキュメントを参照してください。

SQL*Plusでのスクリプトの使用

SQLのコメント・デリミタ(/*…*/)は、スクリプト内の個別の行に入力するか、SQLコマンドと同じ行に入力するか、またはPL/SQLブロック内の行に入力します。

コメントの初めのスラッシュとアスタリスク(/*)の後に空白を入力する必要があります。

コメントは、次のように複数の行にわたっていてもかまいませんが、コメント内にコメントをネストさせることはできません。

[sql]/* Commission Report
to be run monthly. */
COLUMN LAST_NAME HEADING ‘LAST_NAME’;
COLUMN SALARY HEADING ‘MONTHLY SALARY’ FORMAT $99,999;
COLUMN COMMISSION_PCT HEADING ‘COMMISSION %’ FORMAT 90.90;
REMARK Includes only salesmen;
SELECT LAST_NAME, SALARY, COMMISSION_PCT
FROM EMP_DETAILS_VIEW
/* Include only salesmen.*/
WHERE JOB_ID=’SA_MAN’; [/sql]