自分が行いたい配置をするにはどれを使えばいいのかがまず分からない。
また、単純なサンプルで上手くいっても、他のペインと組み合わせると変な動作になったりして、まったく謎。
JComboBoxはモデルを使わなくても操作できるので、素直だなぁ(笑)
他のボタンを押した時にテキストエリアの内容を新しく一覧に追加するのは楽勝だし、
Deleteキーを押した時に一覧から選択肢を削除するのも(出来てしまえば)簡単だし。
…テキストエリアが編集可能な場合、Deleteキーはテキストエリアの文字削除になってしまうので、使えないけど…。
単純にキー割り当てを行った場合は、そちらの方が優先されてしまうらしい。ちょっと試してみたけど、こちらの処理を優先させる方法は発見できなかった(泣)
でも出来たとしても、やっぱりDeleteキーを押したときはテキストエリアの文字が削除される方が自然なので、深く追求しないことにした^^;
ちなみに試している最中に、キー割り当てのInputMapやActionMapへの登録をやってくれるメソッドを発見。
Swingはこういうのを探し出すのが大変なんだよなー(苦笑)
(他のクラスも同じだけど、AWT・Swingは特に)
Oracleのシーケンスに当たるものは、JavaDBでは項目の属性として扱われているらしい。
だからCREATE TABLE文やらINSERT文やらにOracleと違う部分がある。というわけで、JavaDBのSQL文についてメモ。
あと、これは自動的にインクリメントされていく値なので、途中で(テーブルを全件削除した場合などに)採番する値をクリアする方法は無いかなーと思って色々調べてみた。
値自体はシステムテーブルに保持されているので、これをUPDATEすればいいじゃん!と思ったら、権限が無くて出来なかった(苦笑) まぁそういうものだろーなー。
けっきょく、ALTER TABLE文を使うということが分かった。
あとついでに、JDBCでメタデータを扱う方法についてメモ。
項目の一覧とかが取得できることは知っていたけれど、自分で使うことは無いだろうと思っていたのに…^^;
JTreeでドラッグ&ドロップする方法を実験。
デフォルトのデータをドラッグするのは簡単だし、他アプリの一般的なデータ(ファイル一覧とか)をドロップするのもそれほど大変ではないけれど。
次にやりたい事である“JTree内での順序入れ替え”は、仕様を考えるのが面倒そうだ。
特に枝要素・葉要素を含めて複数選択している要素群を移動させる場合って、どうなるのが素直だろう? まぁ、また今度考えよう^^;
JTreeでドラッグ&ドロップをどうやるんだろうと思ったら、setDragEnabled()というメソッドでドラッグ許可したらドラッグは出来たんだけど、ドロップが出来ない^^;
ドロップといったらDropTargetしか知らなかった(JTreeでもDropTarget自体は使えた)が、SwingのコンポーネントにおいてはTransferHandlerというものを使うらしい。
なんだかメソッドがいっぱいあって何がどういう順序で呼ばれるのかよく分からなかったが…。
TransferHandlerは、ドラッグ&ドロップとクリップボードのコピー&ペーストまで対応している。で、それぞれ専用のメソッドと共通のメソッドがあるのでややこしいんだな^^;
なんとか理解した範囲で整理してみた。
…こうして見ると、これらのメソッドもけっこう上手くまとまっているのかもしれないなー。